Post

🐣 카드 섞기

1. 문제 링크

1091번: 카드 섞기



2. 코드

Python552ms31256KB
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
import sys

input = sys.stdin.readline
n = int(input())
p = list(map(int, input().split()))
s = list(map(int, input().split()))
init = list(range(3)) * (n // 3)
now = list(range(3)) * (n // 3)
ans = 0

if p == now:
    print(0)
    exit()

while True:
    tmp = []
    for i in s:
        tmp.append(now[i])
    now = tmp
    ans += 1

    if init == now or p == now:
        break

if init == now:
    print(-1)
else:
    print(ans)



3. 해설

  • 브루트포스로 풀이
This post is licensed under CC BY 4.0 by the author.