케이크

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

친구들이 재민이의 생일을 축하하려고 생일 케이크를 만들고 있다.

케이크를 만들기 위해 높이가 $1$이고 길이가 각각 $W_1, W_2, \dots, W_N$인 빵조각을 $1$번부터 $N$번까지 순서대로 굽는다. 이 빵조각들을 하나도 버리지 않고 모두 쌓아 층층이 케이크를 만들려고 한다.

케이크는 여러 층으로 이루어질 수 있다. 한 층의 길이는 그 층에 놓인 빵조각들의 길이의 합이다. 케이크가 무너지지 않으려면, 위층의 길이가 바로 아래층의 길이보다 클 수 없다.

또한 나중에 구운 빵조각은 먼저 구운 빵조각보다 낮은 층에 놓을 수 없다. 즉 각 층에는 번호가 연속된 빵조각들이 순서대로 놓이며, 아래층에서 위층으로 갈수록 빵조각의 번호가 커진다.

이 조건을 모두 지키면서 케이크를 가장 높이 쌓으려고 한다. 최대 몇 층까지 쌓을 수 있는가?

입력

첫째 줄에 빵조각의 개수 $N$이 주어진다. ($1 \le N \le 100,000$)

다음 $N$개의 줄에 걸쳐 각 빵조각의 길이 $W_i$가 한 줄에 하나씩 주어진다. ($1 \le W_i \le 10,000$)

출력

쌓을 수 있는 케이크의 최대 층수를 출력한다.

힌트

예를 들어 빵조각의 길이가 순서대로 $1, 2, 3$이면 다음과 같이 쌓을 수 있다.

+----------+
|    3     |
+---+------+
| 1 |   2  |
+---+------+

아래층은 $1$번과 $2$번 빵조각(길이의 합 $3$), 위층은 $3$번 빵조각(길이 $3$)으로 이루어져 두 층을 쌓을 수 있다.