[프로그래머스] 약수의 개수와 덧셈 (JAVA)
업데이트:
문제 설명
두 정수 left와 right가 매개변수로 주어집니다.
left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요.
- 제한 조건
1 ≤ left ≤ right ≤ 1,000
- 예시
풀이
class Solution {
public int solution(int left, int right) {
int answer = 0;
int count = 0;
while(left<=right){
for(int j=1; j<=left; j++){
if(left%j ==0){
count++;
}
}
if(count%2==0) answer += left;
else answer -= left;
count = 0;
left++;
}
return answer;
}
}
약수의 개수를 나타낼 count 변수를 선언한 후 약수가 발생할 때 마다 증가하게 구현했다.
left의 약수 계산이 완료되면 count를 다시 0으로 선언하고, left를 증가시켜 right까지 반복한다.
공유하기
Twitter Google+ LinkedIn
댓글남기기