주사위

면접 대비

시간 제한2초메모리 제한512 MB

요약
o와 :로 이루어진 3x3 격자를 90도 회전까지 고려해 주사위 눈 1부터 5 판별하고, 어떤 눈과도 다르면 unknown을 출력합니다.
난이도

보통10점 중 5점

유형
구현, 시뮬레이션, 수학, 완전 탐색
정답자
아직 제출이 없습니다

문제

Binary Casino의 사장은 카지노에서 벌어지는 게임을 완전히 장악하고 싶어 한다. 특히 주사위 게임이 그렇다. 주사위를 던진 뒤에도 주사위를 조작해 승리를 가로채려는 사람이 가끔 나타나기 때문이다. 그래서 모든 주사위 게임의 진행을 감시하는 카메라를 설치했다. 하지만 주사위 인식은 쉬운 일이 아니어서, 카메라가 잘못된 이미지를 만들어 인식 자체가 불가능해지는 경우도 있다.

여러 주사위를 찍은 카메라로부터 래스터화된 데이터가 주어진다. 사진에 있는 주사위의 윗면 값을 판별하거나, 사진이 손상되었음을 알아내는 프로그램을 작성하라. 사진은 잡힌 윗면에 인접한 면들이 x축과 y축에 평행하도록 변환되어 있다. 다만 윗면이 네 가지 방향 중 어느 쪽으로 회전해 있는지는 알 수 없다.

입력

입력은 잡힌 주사위의 윗면을 나타낸다. 세 줄로 이루어지며, 각 줄은 세 문자로 구성되고 각 문자는 꺼진 자리(눈)를 뜻하는 “o” 또는 매끄러운 면을 뜻하는 “:”이다.

출력

사진에 잡힌 주사위 윗면이 나타내는 숫자를 한 줄에 출력한다. 이미지가 잘못된 경우에는 “unknown”을 출력한다.

예제3

  1. 예제 1

    입력
    o:o
    :o:
    o:o
    
    예상 출력
    5
    
  2. 예제 2

    입력
    ::o
    :o:
    o::
    
    예상 출력
    3
    
  3. 예제 3

    입력
    ooo
    :::
    o:o
    
    예상 출력
    unknown