import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.Inet4Address;
import java.util.*;
import static java.util.Collections.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int value = Integer.parseInt(br.readLine());
int count = 1;
int M = (int) Math.ceil(value / 2);
int start_Point = 1;
int end_Point = 1;
int sum = 0;
while(start_Point<=M)
{
if (sum == value)
{
count++;
sum =0; //
start_Point++; // start = 2
end_Point = start_Point; // end = 2
}
else if (sum > value)
{
sum =0;
start_Point++;
end_Point = start_Point;
}
else{
sum+=end_Point; // sum = 4 9 15
end_Point++; // end = 5 6
}
}
System.out.println(count);
}
}
투 포인터를 이용하여 시작 지점과 끝 지점을 정한 후 sum 값이 구하는 값보다 커지면 sum을 초기화한 후 시작 지점을 1 증가한 후 다시 구하는 방식이였다. 신기했다.