dev.Log
2018 연속합 본문
import java.util.Scanner;
public class TwoPointer {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int N = scan.nextInt();
int count = 1;
int start_index = 1;
int end_index=1;
int sum = 1;
while(end_index != N) {
if (sum == N) { //현재 연속 합이 N과 같은 경우
count++;
end_index++;
sum = sum + end_index;
} else if (sum > N) { //현재 연속합이 N보다 큰 경우
sum = sum - start_index;
start_index++;
} else { //연속합이 N보다 작은 경우
end_index++;
sum = sum + end_index;
}
}
System.out.println(count);
}
}
'알고리즘' 카테고리의 다른 글
Deque<Node> deque = new LinkedList<>(); (0) | 2022.09.12 |
---|---|
1253 투포인터 (0) | 2022.09.08 |
10986 나머지합구하기 (0) | 2022.09.04 |
11659 구간합 (1) | 2022.09.02 |
1546 평균구하기 (0) | 2022.09.02 |
Comments