반응형
https://school.programmers.co.kr/learn/courses/30/lessons/77884
1. 나의 풀이
class Solution {
public int solution(int left, int right) {
int answer = 0;
for(int i=left; i<=right; i++){
if(is약수의갯수는짝수(i)) answer += i;
else answer -= i;
}
return answer;
}
//약수의 갯수가 짝수면 true
public boolean is약수의갯수는짝수(int num){
int count = 0; //약수의갯수
for (int i = 1; i <= num; i++) {//약수라면 카운트증가
if (num % i == 0) {
count++;
}
}
if(count%2==0) return true;
else return false;
}
}
2. 제곱수인 경우는 약수의 갯수가 홀수이다!! (대박적..)
class Solution {
public int solution(int left, int right) {
int answer = 0;
for (int i=left;i<=right;i++) {
//제곱수인 경우 약수의 개수가 홀수
if (i % Math.sqrt(i) == 0) {
answer -= i;
}
//제곱수가 아닌 경우 약수의 개수가 짝수
else {
answer += i;
}
}
return answer;
}
}
반응형
'coding_test' 카테고리의 다른 글
[99클럽 4기 코테 스터디 TIL 2일차] 크기가 작은 부분 문자열 (0) | 2024.10.30 |
---|---|
[99클럽 4기 코테 스터디 TIL 1일차] 문자열 내 p와 y의 개수 (1) | 2024.10.28 |
[코딩테스트] 4. 프로그래머스 코딩테스트입문 (Day5, Day6) 코딩 기초 트레이닝 (Day1, Day2) (0) | 2024.10.18 |
[코딩테스트] 3. 프로그래머스 코딩테스트입문 (Day1 ~ Day4) (1) | 2024.10.17 |
[코딩테스트]1. 신규아이디추천 (with 자바 문자열) (0) | 2024.10.16 |