두 색 별로 칠한 동심 사각 고리
의견: 0
과녁 모양의 판은 여러 겹의 동심 사각 고리로 이루어져 있다. 가장 바깥쪽 고리부터 안쪽으로 들어가면서 별표 (\(*\)) 와 샵 (\(\#\)) 을 번갈아 칠하는데, 가장 바깥 고리는 별표로 칠한다.
즉 바깥에서부터 첫 번째 고리는 \(*\), 두 번째 고리는 \(\#\), 세 번째 고리는 다시 \(*\) … 이런 식으로 칠해진다.
\(N \times N\) 크기의 판이 주어질 때, 완성된 판을 출력하는 프로그램을 작성하라.
어떤 칸 \((r, c)\) (행과 열은 \(0\) 부터 센다) 가 속한 고리의 번호는 그 칸이 판의 테두리로부터 얼마나 안쪽에 있는지를 나타내는 \(\min(r,\; c,\; N-1-r,\; N-1-c)\) 와 같다. 이 번호가 짝수인 칸은 \(*\), 홀수인 칸은 \(\#\) 로 칠한다.
\(1 \le N \le 500\)
첫째 줄에 판의 한 변의 길이 \(N\) 이 주어진다 (\(1 \le N \le 500\)).
\(N\) 개의 줄에 걸쳐 완성된 \(N \times N\) 판을 출력한다. 각 줄은 정확히 \(N\) 개의 문자 (\(*\) 또는 \(\#\)) 로 이루어진다.
5
*****
*###*
*#*#*
*###*
*****
\(N = 5\). 가장 바깥 고리는 별(\(*\)), 그 안쪽 고리는 샵(\(\#\)), 정중앙 칸은 다시 별(\(*\))이다.
각 칸 \((r, c)\) 의 고리 번호는 \(\min(r,\;c,\;N-1-r,\;N-1-c)\) 이며, 이 값이 짝수면 \(*\), 홀수면 \(\#\) 를 칠한다.
1
*
\(N = 1\) 이면 칸이 하나뿐이고, 가장 바깥(=유일한) 고리이므로 \(*\) 이다.
4
****
*##*
*##*
****
\(N = 4\) 이면 바깥 고리 \(*\) 한 겹과 안쪽 \(2 \times 2\) 고리 \(\#\) 한 겹뿐이다.
riseoj 작성
출처 Original
평가 및 의견
두 색 별로 칠한 동심 사각 고리
아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.
풀이 제출
두 색 별로 칠한 동심 사각 고리