
-Code
import java.util.Scanner;
public class BOJ2018 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
int cnt = 0;
int start = 0;
int end = 0;
int total = 0;
// 투 포인터로 로직 작성
while (end <= N) {
if (total > N) {
// 현제 구간 합과 n이 작다면 start 빼주고 확장
total -= start;
start++;
} else {
// 현제 구간 합과 n이 직가니 같다면 end 확장
if (total == N) {
// 같으면 cnt + 1
cnt++;
}
end++;
total += end;
}
}
System.out.println(cnt);
}
}
'Beakjoon&프로그래머스 > Java' 카테고리의 다른 글
| [백준/Java] 12891번 DNA 비밀번호 (0) | 2025.09.19 |
|---|---|
| [백준/Java] 1940번 주몽 (0) | 2025.09.19 |
| [백준/Java] 11659번 구간 합 구하기 4 (0) | 2025.09.18 |
| [LeetCode/Java] 9. Palindrome Number (0) | 2025.06.16 |
| [LeetCode/Java] 383. Ransom Note (1) | 2025.06.10 |