Code/BOJ

#5373 큐빙

milkteagood 2020. 1. 5. 20:19
728x90
반응형

출처:https://www.acmicpc.net/problem/5373

 

5373번: 큐빙

문제 루빅스 큐브는 삼차원 퍼즐이다. 보통 루빅스 큐브는 3×3×3개의 작은 정육면체로 이루어져 있다. 퍼즐을 풀려면 각 면에 있는 아홉 개의 작은 정육면체의 색이 동일해야 한다. 큐브는 각 면을 양방향으로 90도 만큼 돌릴 수 있도록 만들어져 있다. 회전이 마친 이후에는, 다른 면을 돌릴 수 있다. 이렇게 큐브의 서로 다른 면을 돌리다 보면, 색을 섞을 수 있다. 이 문제에서는 루빅스 큐브가 모두 풀린 상태에서 시작한다. 윗 면은 흰색, 아랫 면은 노란

www.acmicpc.net

세로 12 가로 9 인 cube 배열을 만들어서 명령에 맞는 동작을 하는 단순 구현 문제이다. 고정된 배열을 기준으로  회전을 적용시키는 방식으로 진행하였다. 그런데 이렇게 배열을 고정시키는 것보다 한 면을 중심으로 주변에 붙어 있는 4개의 면과의 관계를 정의하고 회전을 정의하게 되면 회전함수 정의를 하나로 고정시켜서 구현할 수 있겠다는 생각을 하였다. 다음번에 이 방식대로 구현해 볼려고 한다.

 

소스코드

 

728x90
반응형