본문 바로가기

기록/알고리즘

2019-2) Synchronizing Clocks

SMALL

Q. 4X4의 형태로 시계가 배치되어 있고 각각의 시계는 3/6/9/12 중 하나를 가리키고 있다.

16개 시계 모두 12시를 가리키게 하고 싶다.

시계의 방향은 10개의 스위치를 이용해서 조정할 수 있으며 스위치를 한 번 누르면 3시간 뒤로 조절된다.

10개의 스위치는 각각 복수개의 시계와 연결되어 있으며 연결된 시계 모두 3시간 후로 움직인다.

 

스위치번호 - 연결된 시계 

0 - 0, 1, 2

1 - 3, 7, 9, 11

2 - 4, 10, 14, 15

3 - 0, 4, 5, 6, 7

4 - 6, 7, 8, 10, 12

5 - 0, 2, 14, 15

6 - 3, 14, 15

7 - 4, 5, 7, 14, 15

8 - 1, 2, 3, 4, 5

9 - 3, 4, 5, 9, 13

 

입력 예시

0 3 0 1 2 (0번 스위치가 3개의 시계(0, 1, 2)에 연결됨)

1 4 3 7 9 11

2 4 4 10 14 15

.

.

9 5 3 4 5 9 13

12 6 6 6 6 6 12 12 12 12 12 12 12 12 12 12 (16개시계의 현재 시간)

 

출력예시

2 (두번 누르면 모든 시계가 원위치로)

 

hint

더보기

스위치는 최대 3번까지 누를 수 있음 (4번누르면 안누른 거나 마찬가지)

10개의 숫자를 담을 수 있는 bucket

index0 : 0번 스위치를 누른 횟수

 

뽑은 item은 0, 1, 2, 3중에 하나.

SMALL

'기록 > 알고리즘' 카테고리의 다른 글

백준 4344 ) 평균은 넘겠지  (0) 2020.03.06
2019-2) Finding path in fantasia  (0) 2020.03.06
2019-2) # of Changes  (0) 2020.03.06
2019-2) Salary  (0) 2020.03.06
2019-2) handshaking  (0) 2020.03.06