728x90
문제 바로가기: https://school.programmers.co.kr/learn/courses/30/lessons/77884
나의 풀이
class Solution {
public int solution(int left, int right) {
int answer = 0;
for(int i= left; i<right+1; i++){
if(Math.pow(Math.floor(Math.sqrt(i)),2) == i ){
answer -= i;
} else {
answer += i;
}
}
return answer;
}
}
다른 사람의 풀이
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;
}
}
소감
다양한 연산!
'verdantjuly > 코딩테스트' 카테고리의 다른 글
프로그래머스 코딩테스트 연습 : 부족한 금액 계산하기 (20240312, java) (0) | 2024.03.12 |
---|---|
프로그래머스 코딩테스트 연습 : 문자열 내림차순으로 배치하기 (20240312, java) (0) | 2024.03.12 |
프로그래머스 코딩테스트 연습 : 내적 (20240312, java) (0) | 2024.03.12 |
프로그래머스 코딩테스트 연습 : 수박수박수박수박수박수? (20240311, java) (0) | 2024.03.12 |
프로그래머스 코딩테스트 연습 : 제일 작은 수 제거하기 (20240311, java) (0) | 2024.03.11 |