[BOJ 30457] 단체줄넘기

View as PDF

Submit solution

Points: 2
Time limit: 1.0s
Memory limit: 1G

Problem type
Allowed languages
Assembly, Awk, C, C++, Java, Pascal, Perl, Python, Sed, Text

$N$명의 학생들이 단체줄넘기를 하려고 한다. 단체줄넘기를 하기 위해서는 한 줄로 나란히 서야 하고, 학생들은 각자 줄을 잡은 양쪽 방향 중 한 곳을 바라보고 서야 한다.</p>

학생들은 각자 바라보는 방향에 자신보다 키가 크거나 같은 사람이 있다면 점프할 타이밍을 놓쳐 줄에 걸릴 수 있다. 학생들은 최대한 많이 단체줄넘기를 뛰고 싶어 하기 때문에, 줄에 걸릴 수 있는 상황을 만들지 않으려고 한다. 즉 자신이 바라보는 방향에 자신보다 키가 작은 학생들만 앞에 오도록 줄을 서려고 한다.

학생들의 키를 알고 있을 때, 이 중 최대 몇 명의 학생이 단체줄넘기에 참여할 수 있을까? 줄을 돌리는 사람은 주어진 학생에 포함되지 않는다.

입력 형식

첫째 줄에 학생의 수 $N$이 주어진다. $\left( 1\leq N\leq 1\, 000 \right)$</p>

둘째 줄에 학생들의 키를 나타내는 정수 $A_i$가 공백으로 구분되어 주어진다. $\left( 1\leq A_i\leq 1\, 000 \right)$

출력 형식

줄에 걸릴 수 있는 상황을 만들지 않도록 학생들을 적절히 배치했을 때, 단체줄넘기에 참여할 수 있는 최대 학생 수를 출력한다.

예제 입력 1

5
1 2 3 4 5

예제 출력 1

5

예제 입력 2

10
1 3 2 4 2 4 4 3 2 7

예제 출력 2

8

예제 입력 3

5
10 10 10 10 10

예제 출력 3

2

Comments

There are no comments at the moment.