본문 바로가기
Algorithm Problem Solving/BaekJoon

[BaekJoon] 백준 11586 지영 공주님의 마법 거울 (Python / 파이썬)

by ʚ⇜❅🎕̈❄⇝ɞ 2021. 8. 20.
728x90
반응형

BaekJoon 백준 11586 지영 공주님의 마법 거울 문제는 마법 거울은 매일 자신의 심리상태에 따라 거울에 비친 공주님의 모습을 좌/우 또는 상/하로 반전시켜 비추기로 한다. 심리상태에 따라 마법 거울에 비친 지영 공주님의 모습을 출력하는 문제이다. 난이도는 Bronze 1이다.

 

BaekJoon 11586 지영 공주님의 마법 거울 문제 정보

출처

- https://www.acmicpc.net/problem/11586

난이도

- 브론즈 1 / Bronze 1

 

지영 공주님의 마법 거울 문제 요약

  • 마법 거울은 매일 자신의 심리상태에 따라 거울에 비친 공주님의 모습을 좌/우 또는 상/하로 반전시켜 비추기로 한다.
  • 마법 거울의 심리상태는 1부터 3까지의 자연수로 표현할 수 있으며, 숫자가 클수록 더 화가 난 상태를 의미한다.
  • 마법 거울의 심리상태가 1일 때는 지영 공주님의 모습을 있는 그대로 표현하고, 2일 때는 좌/우로 반전된 모습을, 3일 때는 상/하로 반전된 모습을 표현한다.
  • 정사각형 모양의 마법 거울의 크기 N은 자연수(2 ≤ N ≤ 100),  심리상태를 나타내는 정수 K(1 ≤ K ≤ 3)
  • 정사각형 형태의 마법 거울의 크기와 거울에 비친 지영 공주님의 원래 모습, 마법 거울의 심리상태가 주어졌을 때, 마법 거울에 비친 지영 공주님의 모습을 출력한다.

문제 풀이 과정

  1. 거울에 비친 모습을 mirror 리스트에 저장한다.
  2. 심리 상태가 1일 때는 mirror를 그대로 출력한다.
  3. 2일 때는 좌/우 반전이므로, mirror의 원소들을 역순으로 출력한다.
  4. 3일 때는 상/하 반전이므로, mirror의 자체를 역순으로 출력한다.

 

코드 및 설명
N = int(input())
mirror = []
for i in range(N):
    mirror.append(input())
K = int(input())

if K == 1:
    for m in mirror:
        print(m)
elif K == 2:
    for m in mirror:
        print(m[::-1])
elif K == 3:
    for m in mirror[::-1]:
        print(m)

BaekJoon 백준 11586 지영 공주님의 마법 거울 문제를 파이썬 python으로 풀어보았다. 난이도는 Bronze 브론즈 1이다. 

728x90
반응형

댓글