💡Problem Solving/Programmers
[프로그래머스] 숫자의 표현 (Java)
gom20
2021. 10. 18. 15:27
#문제
https://programmers.co.kr/learn/courses/30/lessons/12924
코딩테스트 연습 - 숫자의 표현
Finn은 요즘 수학공부에 빠져 있습니다. 수학 공부를 하던 Finn은 자연수 n을 연속한 자연수들로 표현 하는 방법이 여러개라는 사실을 알게 되었습니다. 예를들어 15는 다음과 같이 4가지로 표현 할
programmers.co.kr
#소스코드
class Solution {
public int solution(int n) {
int answer = 0;
int R = 1, sum = 0;
for(int L = 1; L <= n/2; L++){
sum -= L-1;
while(R <= n/2+1 && sum < n){
sum += R;
R++;
}
if(sum == n) answer++;
}
return answer+1;
}
}
Two Pointer 알고리즘을 이용했습니다.
n을 모두 순회할 필요는 없으므로, 자기 자신은 마지막에 +1을 더하는 것으로 처리했습니다.