바이트아저(Byteasar)는 벽돌 n개를 사서 1번부터 n번까지 번호를 매겼습니다. 모든 벽돌의 높이는 같지만 너비는 다를 수 있으며, i번 벽돌의 너비는 wi입니다.
바이트아저는 다음 규칙에 따라 모든 벽돌을 여러 층으로 쌓아 탑을 만들려고 합니다.
탑의 높이는 층의 개수입니다. 바이트아저가 쌓을 수 있는 탑의 최대 높이를 구하세요.
첫째 줄에 벽돌의 개수 n (1≤n≤100000)이 주어집니다. 둘째 줄에 n개의 정수 w1,w2,…,wn (1≤wi≤10000)이 주어지며, wi는 i번 벽돌의 너비입니다.
쌓을 수 있는 탑의 최대 높이를 정수 하나로 출력합니다.
너비가 각각 1, 2, 3인 벽돌 세 개를 생각해 봅시다. 1번과 2번 벽돌을 맨 아래층에 놓으면 그 층의 너비는 1+2=3이고, 3번 벽돌을 맨 위층에 놓으면 그 층의 너비는 3입니다. 3은 3을 넘지 않으므로 이 탑은 규칙을 만족하며, 높이는 2가 됩니다.