티스토리 뷰

PS/BOJ

[BOJ] 백준 14499번: 주사위 굴리기

박트리 2017. 4. 11. 10:53

주사위 굴리기


문제


지도 위에서 주어진 명령에 따라 주사위를 굴린다. 각 명령에 대해서 주사위 맨 윗면의 값을 출력하는 문제이다.



문제 풀이


시뮬레이션 문제이다. 명령이 K번 존재하므로 \(O(K)\)로 해결가능하다.

주어진 그림과 같이 항상 맨 윗면이 1 바닥과 닿아 있는 면을 6으로 생각하고 구현해보자.

오른쪽으로 구르는 경우를 예시로 들면

1. 먼저 구를수 있는지 판단(다음 좌표가 지도 내부인지)

2. 다음 주사위 상태에서 2번과 5번 면은 변하지 않는다. 오른쪽이므로,

현재 1번 면이 다음 3번 면으로

현재 4번 면이 다음 1번 면으로

현재 6번 면이 다음 4번 면으로

현재 3번 면이 다음 6번 면으로 바뀌게 된다.

3. 다음 상태공간을 만들었다면 6번 면과 지도 값을 비교하여 문제에 주어진 조건에 맞게 구현한다.



** 간단한 시뮬레이션 문제이므로 각 4방향에 맞게 주사위 상태변화를 제대로 구현하였는지만 확인하면 된다. 

 

소스 코드


'PS > BOJ' 카테고리의 다른 글

[BOJ] 백준 12100번: 2048(Easy)  (17) 2017.04.05
[BOJ] 백준 10875번: 뱀  (1) 2017.04.03
[BOJ] 백준 13460번: 째로탈출 2  (13) 2017.03.31
[BOJ] 백준 3653번: 영화 수집  (0) 2017.03.29
[BOJ] 백준 1941번: 소문난 칠공주  (2) 2017.03.27
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/03   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
글 보관함