알고리즘, 코딩테스트/알고리즘 풀이
[프로그래머스/ 코딩테스트 월간코드챌린지 시즌2] 약수의 개수와 덧셈
jiyoon0000
2024. 11. 13. 12:12
Q. 약수의 개수와 덧셈
A.
class Solution {
public int solution(int left, int right) {
int answer = 0;
//left에서 right 사이의 모든 수를 i에 대입해서 사용
for(int i=left; i<=right; i++){
//약수의 개수를 세야하니까 count를 선언해서 사용
int count = 0;
//약수 개수 구하기
//1부터 i까지 1씩 증가하면서 나눠서 나머지가 0이면 약수
//약수일 경우 count를 증가시킴
for(int j=1; j<=i; j++){
if(i%j == 0){
count++;
}
}
//위에서 구한 count가 짝수일 경우 answer에 +
//count가 홀수일 경우 answer에 -
if(count%2 == 0){
answer += i;
}else{
answer -= i;
}
}
return answer;
}
}