문제
두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ left ≤ right ≤ 1,000
코드
using namespace std;
int solution(int left, int right)
{
int answer = 0;
for(; left <= right; left++)
{
int cnt = 0;
for(int i = 1; i <= left; i++)
if(left % i == 0)
cnt++;
if(cnt & 1) answer -= left;
else answer += left;
}
return answer;
}
나의 생각
'Algorithm > 프로그래머스 : Level 1' 카테고리의 다른 글
[프로그래머스 Level 1] 가운데 글자 가져오기 (0) | 2021.11.11 |
---|---|
[프로그래머스 Level 1] 문자열을 정수로 바꾸기 (0) | 2021.11.10 |
[프로그래머스 Level 1] 비밀지도 (2018 카카오 기출) (0) | 2021.11.10 |
[프로그래머스 Level 1] 폰캣몬 (0) | 2021.11.09 |
[프로그래머스 Level 1] 부족한 금액 계산하기 (0) | 2021.11.09 |