▸ 숫자의 표현
출처 : 프로그래머스 코딩테스트 연습 > 연습문제 > 숫자의 표현
class Solution {
public int solution(int n) {
int answer = 0;
for(int i = 1; i <= n; i++) {
int result = n-i;
if(result == 0) {
answer++;
break;
}
for(int j = i+1; j <= n; j++) {
result -= j;
if(result == 0) {
answer++;
break;
}
}
}
return answer;
}
}
class Solution {
public int solution(int n) {
int answer = 0;
for(int i = 1; i <= n; i++) {
for(int j = i+1; j <= n; j++) {
int result = (i+j)*(j-i+1)/2;
if(result == n) {
answer++;
break;
}
}
}
return answer+1;
}
}
1 + 2 + 3 + 4 + 5 = 15
4 + 5 + 6 = 15
7 + 8 = 15
15 = 15
class Solution {
public int solution(int n) {
int answer = 0;
int start = 1;
int end = 1;
int sum = 0;
while (end <= n) {
if (sum < n) {
sum += end;
end++;
} else if (sum > n) {
sum -= start;
start++;
} else {
answer++;
sum -= start;
start++;
}
}
return answer+1;
}
}