https://www.acmicpc.net/problem/23841
23841번: 데칼코마니
첫 줄에 그림의 세로 길이 정수 N과 가로 길이 정수 M이 주어진다. (1 ≤ N, M ≤ 50, M은 짝수) N개 줄에 M개씩 그림에 대한 정보가 주어진다. 물감은 26가지가 있고, 각각 알파벳 대문자 하나로 나타
www.acmicpc.net
Problem
- 위에 보이는 것처럼 그림을 좌우 방향으로 반으로 포개어 접으면, 맞닿는 면에 물감이 번지면서 데칼코마니가 완성된다.
- 접은 그림은 원래대로 되돌릴 수 없기 때문에 희권이는 결과를 미리 알고 싶어 한다.
- 희권이에게 그림을 데칼코마니 한 결과를 알려주자.
조건
- 첫 줄에 그림의 세로 길이 정수 N과 가로 길이 정수 M이 주어진다. (1 ≤ N, M ≤ 50, M은 짝수)
- N개 줄에 M개씩 그림에 대한 정보가 주어진다.
- 물감은 26가지가 있고, 각각 알파벳 대문자 하나로 나타낸다.
- 그림에서 색칠한 곳은 물감에 해당하는 알파벳으로 빈 곳은 '.'으로 표현한다. 그림의 가로 길이는 짝수이고, 그림을 접었을 때 두 물감이 겹치는 경우는 없다.
SOL
좌표들 간의 상관관계를 잘 따지면, 쉽게 해결할 수 있는 문제다.
직관적으로 딱 ! 보임
# 데칼코마니
import sys
input = sys.stdin.readline
N,M =map(int,input().split())
board=[list(input().rstrip()) for _ in range(N)]
for i in range(N):
for j in range(M):
if board[i][j] !=".":
board[i][M-j-1]=board[i][j]
for p in board:
print("".join(p))
'알고리즘 문제(SOL)' 카테고리의 다른 글
[백준/16984/파이썬] 데스 나이트 (0) | 2022.02.07 |
---|---|
[백준/14888/파이썬] 연산자 끼워넣기 (0) | 2022.02.07 |
[백준/3197/파이썬] 백조의 호수 (0) | 2022.02.06 |
[백준/16928/파이썬] 뱀과 사다리 게임 (0) | 2022.02.06 |
[백준/1100/파이썬] 하얀 칸 (0) | 2022.02.05 |