시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
---|---|---|---|---|---|
1 초 | 512 MB | 549 | 151 | 128 | 34.688% |
다음과 같이 어떤 책의 목차가 있다.
- Heading 1
- SubHeading 1-1
- SubHeading 1-1-1
- SubHeading 1-1-2
- Heading 2
- SubHeading 2-1
- SubHeading 2-2
- Heading 3
목차는 여러 제목으로 이루어져 있다. 또한, 제목은 여러 개의 하위 제목을 가질 수 있다. 하위 제목 또한 자기 자신의 하위 제목을 가질 수 있다. 이러한 관계를 목차에 나타내기 위해, 제목 앞의 들여쓰기를 이용해 먼저 제목의 레벨을 구분한다. 공백이 없으면 $1$레벨, 공백이 $2$칸 있으면 $2$레벨, $4$칸 있으면 $3$레벨과 같은 식이다. 즉, 제목의 레벨이 $l$이라면 공백의 수 $s$는 $s = 2 \times (l - 1)$이다.
목차에 나타낸 제목들은 다음과 같은 관계를 갖는다.
위 예시에서 Heading1
의 하위 제목은 $1$개, SubHeading 1-1
의 하위 제목은 $2$개가 있다. 간략히 이 예시에서 각 제목의 레벨과 하위 제목의 개수를 구하면 아래와 같다.
- Heading 1 (1레벨, 1개)
- SubHeading 1-1 (2레벨, 2개)
- SubHeading 1-1-1 (3레벨, 0개)
- SubHeading 1-1-2 (3레벨, 0개)
- Heading 2 (1레벨, 2개)
- SubHeading 2-1 (2레벨, 0개)
- SubHeading 2-2 (2레벨, 0개)
- Heading 3 (1레벨, 0개)
목차가 주어졌을 때, 각 제목의 하위 제목이 몇 개인지 각각 세어 출력하시오. 편의를 위해, 입력으로는 각 목차의 레벨만이 위에서부터 순서대로 주어진다.
첫째 줄에 목차가 가지고 있는 제목의 수 $N$이 주어진다. ($1 \le N \le 1\,000\,000$)
둘째 줄부터 순서대로 제목의 레벨 $l$이 주어진다. ($1 \le l \le N$)
주어진 목차가 올바르면 $N$개의 줄에 걸쳐 각 제목의 하위 제목의 수를 한 줄에 하나씩 출력하시오.
주어진 목차가 올바르지 않으면 $-1$만을 출력하시오.
8 1 2 3 3 1 2 2 1
1 2 0 0 2 0 0 0
4 1 2 1 3
-1