대각선으로 보는 세상 서브태스크 1초 32MB
문제
블록코딩을 하다가 지친 정민이는 진짜 블록을 가지고 놀기 시작했다.
마침내 NxN크기의 정사각형의 테이블을 꽉 채운 블록 산을 만들었는데, 이 블록 산은 높이가 전부 동일하지는 않다.
아래 그림과 같이 오른쪽 아래 대각선에서 해당 산을 바라본다면 대각선상으로 앞에 있는 블록의 높이보다 더 낮은 높이의 블록은 보이지 않는다.
![]() | ![]() |
|---|
블록 산의 각 칸의 높이가 주어졌을 때, 오른쪽 아래에서 볼 수 있는 블록들 중 각 대각선 별로 보이는 블록 가운데 가장 뒤에 있는 블록의 높이를 왼쪽부터 출력하는 프로그램을 작성하시오.
위의 예제에서는 오른쪽 그림에 윗칸이 검정색으로 칠해진 블록에 해당하는 높이인 [3, 2, 4, 4, 8, 4, 1] 이 답이 된다.
입력
첫 줄에 테이블의 크기 N이 입력된다. (1 ≤ N ≤ 100)
두 번째 줄부터 테이블의 각 행과 열에 쌓인 블록의 높이가 N줄에 걸쳐 N개의 정수로 입력된다. (1 ≤ 높이 ≤ 100)
출력
첫 줄에 오른쪽 아래 대각선에서 볼 수 있는 블록들 가운데 각 대각선 별로 보이는 블록 중 가장 뒤에 있는 블록의 높이를 왼쪽부터 순서대로 출력하시오.
부분문제
| 번호 | 점수 | 조건 |
|---|---|---|
| #1 | 10점 | N ≤ 2 |
| #2 | 10점 | 각 대각선에서 시야에서 보이는 가장 앞 부분이 가장 높다 |
| #3 | 80점 | 추가 제한 없음 |
예제
4
3 6 4 1
4 4 3 2
1 2 3 8
3 2 1 1
3 2 4 4 8 4 1

