Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- frontend roadmap study
- 프로그래머스 데브코스 프론트엔드
- react 프로젝트 리팩토링
- 모던 자바스크립트 Deep Dive
- K_Digital Training
- TypeScript 문법 소개
- 개발자 특강
- 리팩토링 회고
- 프로그래머스 K_Digital Training 프론트엔드
- 프로그래머스 데브코스
- useEffect return
- 백준 js
- 모던 javascript Deep Dive
- 모던 자바스크립트 TIL
- 모던 자바스크립트 딥다이브
- KDT 프로그래머스 데브코스 프론트엔드
- react customHook 예시
- Vue3
- useRef 지역 변수
- 프로그래머스 K_Digital Training
- 우테캠 회고록
- 투포인터알고리즘 js
- 모던 자바스크립트 Deep Dive TIL
- 백준 node.js
- Vue3 Router
- Frontend Roadmap
- 인프런 자바스크립트 알고리즘 문제풀이
- 머쓱이
- 프로그래머스 데브코스 프론트엔드 TIL
- KDT 프로그래머스
Archives
- Today
- Total
프론트엔드 개발자의 기록 공간
[프로그래머스 JavaScript] 약수의 개수와 덧셈 본문
프로그래머스 Level1 약수의 개수와 덧셈 -> 월간 코드 챌린지 시즌2
문제 설명 : 주어지는 숫자 사이에 약수들의 개수를 판별해서 짝수개면 해당 수를 더하고 홀수개면 해당 수를 빼면된다.
문제 접근법
1. 약수를 구하기 위해서는 1부터 자신의 수까지 반복문을 통해 나누면서 나머지가 0을 구하면됩니다.
여기서 주의할점이 6의 약수는 1,3,6 입니다. 즉 약수가 3, 3으로 중복될 경우만 제외해주면됩니다.
function solution(left, right) {
var answer = 0;
//left ~ right
for(let i=left; i<=right; i++){
let cnt = 0;
//1 ~ i
for(let j=1; j<=i; j++){
if(i%j === 0){
cnt += 1;
}
}
//cnt 개수에 따라 덧셈 뺄셈
answer = cnt%2 === 0 ? answer += i : answer -= i;
}
return answer;
}
728x90
'알고리즘_JS > 프로그래머스_Level1' 카테고리의 다른 글
[프로그래머스 JavaScript] 같은 숫자는 싫어 (0) | 2021.07.12 |
---|---|
[프로그래머스 JavaScript] 두 개 뽑아서 더하기 (0) | 2021.07.11 |
[프로그래머스 JavaScript] 숫자 문자열과 영단어 (0) | 2021.07.11 |
[프로그래머스 JavaScript] 가운데 글자 가져오기 (0) | 2021.07.11 |
[프로그래머스 JavaScript] 1차 다트게임 (0) | 2021.06.17 |
Comments