반응형
코딩하기 전 생각하기
/*
left부터 right까지 반복한다. (i)
1부터 i까지 반복한다. (j)
i를 j로 나눴을 때 나머지가 0이면
count에 1를 더한다.
count가 짝수이면 answer에 i을 더하고
아니라면 answer에 i를 뺀다.
answer를 반환한다.
*/
코드
#include <bits/stdc++.h>
using namespace std;
int solution(int left, int right) {
int answer = 0;
for ( int i = left; i <= right; i++ ) {
int count = 0;
for ( int j = 1; j <= i; j++ ) {
if ( i % j == 0 ) count++;
}
if ( count % 2 == 0 ) answer += i;
else answer -= i;
}
return answer;
}
느낀점
여러모로 나머지 연산을 많이 하는 문제였다.
(주의) 기록용으로 작성한 글입니다. 코드가 허접하거나 알고리즘의 효율이 낮을 수 있습니다.
댓글 환영합니다!
반응형
'Algorithm > programmers' 카테고리의 다른 글
[프로그래머스] 콜라츠 추측 (C++) (0) | 2021.07.24 |
---|---|
[프로그래머스] 방문 길이 (C++) (0) | 2021.07.24 |
[프로그래머스] 소수 만들기 (C++) (0) | 2021.07.23 |
[프로그래머스] 하샤드 수 (C++) (0) | 2021.07.23 |
[프로그래머스] 스킬트리 (파이썬) (0) | 2021.07.05 |
댓글