극장 좌석 우선순위
시간 제한1초메모리 제한128 MB
1행 가운데 좌석에서의 유클리드 거리로 각 좌석의 우선순위를 정하고, 거리가 같으면 행 번호와 좌석 번호로 순서를 가른 뒤 뒷줄부터 앞줄 순서로 출력한다.
문제
한 극장의 좌석이 직사각형 모양으로 배치되어 있다. 한 줄에 놓인 좌석 수(폭) 는 홀수이며 이고, 줄 수는 로 이다. 각 줄의 좌석은 무대에서 볼 때 왼쪽부터 오른쪽으로 번부터 번까지 번호가 매겨지고, 줄은 무대에 가장 가까운 줄부터 번부터 번까지 번호가 매겨진다. 같은 줄에서 이웃한 두 좌석 사이의 간격은 이며, 이 간격은 서로 인접한 두 줄에서 바로 앞뒤에 있는 두 좌석 사이의 간격과 같다. 따라서 번 줄의 번 좌석은 격자점 에 놓인다.
표는 온라인으로 판매되며 좌석이 자동으로 배정되므로, 모든 좌석에는 서로 다른 우선순위가 부여된다. 우선순위 이 가장 좋다. 우선순위는 다음 규칙에 따라 정해진다.
- 무대에 가장 가까운 번 줄의 한가운데 좌석, 즉 위치 의 좌석이 가장 좋은 우선순위 을 가진다.
- 나머지 좌석은 그 가장 좋은 좌석까지의 유클리드 거리로 순위를 매긴다. 좌석이 가까울수록 우선순위가 더 좋다(숫자가 더 작다).
- 거리가 정확히 같은 좌석들 중에서는 무대에 더 가까운 줄(줄 번호가 더 작은 쪽)의 좌석이 더 좋은 우선순위를 가진다.
- 거리가 같고 같은 줄에 있는 좌석들 중에서는 번 좌석(가장 왼쪽 좌석)에 더 가까운 좌석이 더 좋은 우선순위를 가진다.
모든 좌석의 좌표 가 서로 다르므로, 이 규칙들은 개의 좌석 각각에 서로 다른 우선순위를 부여한다. 주어진 폭과 줄 수에 대해 완성된 우선순위 표를 출력하는 프로그램을 작성하라.
입력
공백으로 구분된 두 정수 와 이 한 줄에 주어진다. 는 홀수이고 , 이다.
출력
개의 줄을 출력한다. 에 대해 번째 줄에는 번 줄에 있는 좌석들의 우선순위 개를 번 좌석부터 번 좌석 순서로 공백 하나로 구분하여 출력한다. 즉 극장 뒤쪽 줄(번 줄)부터 맨 앞줄(번 줄)까지 차례대로 출력한다.