728x90
반응형
#include <string>
#include <vector>
using namespace std;
int solution(int left, int right) {
int answer = 0;
int count = 0;
for(int i = left; i <= right ; i++){
for(int j = 1 ; j <= i; j++){
if (i % j == 0){
count ++;
}
}
if(count % 2 == 0){
answer += i;
}
else{
answer -= i ;
}
}
return answer;
}
이렇게 코드를 작성했는데 왜 자꾸 에러가 뜨나 했더니
count 변수를 for문안에 안넣어서였다..
변수가 바뀔 때 마다 count를 새로 시작해야하는데 바깥에 뒀으니..ㅋㅋㅋㅋ
아래 코드가 정답!
#include <string>
#include <vector>
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;
}
728x90
반응형
'Computer Science > Coding Test' 카테고리의 다른 글
SQL 코딩테스트 : 프로그래머스 - 보호소에서 중성화한 동물 (0) | 2023.03.03 |
---|---|
SQL 코딩테스트 : 프로그래머스 - 오랜 기간 보호한 동물(1) (0) | 2023.03.03 |
SQL 코딩테스트 : 프로그래머스 - 입양 시각 구하기(1) (0) | 2023.02.05 |
SQL 코딩테스트 : 프로그래머스 - 경기도에 위치한 식품창고 목록 출력하기 (0) | 2023.02.05 |
SQL 코딩테스트 : 프로그래머스 - 가격이 제일 비싼 식품의 정보 출력하기 (0) | 2023.02.05 |
댓글