[백준, BOJ 2018] 수들의 합 5 (java)
Problem Solving/BOJ

[백준, BOJ 2018] 수들의 합 5 (java)

728x90

https://www.acmicpc.net/problem/2018

메모리: 14,192 KB , 시간: 152 ms

사용 알고리즘: 수학, 두 포인터

728x90

import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws Exception{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
// 투포인터
int s = 1, e = 1;
int sum = 1;
int result = 0;
while(e <= N) {
if(sum == N) {
result++;
sum -= s++;
}
else if(sum < N) {
sum += ++e;
}
else {
sum -= s++;
}
}
System.out.println(result);
}
}
728x90