ํฐ์คํ ๋ฆฌ ๋ทฐ
import sys
from collections import deque
input = sys.stdin.readline
N, K = map(int, input().rstrip().split())
P = list(input().rstrip().split())
visited = set("".join(P))
q = deque([["".join(P),0]])
ans = -1
while(q):
word, cnt = q.popleft() # ๋จ์ด, ๋จ์ด๋ฅผ ๋ฐ๊พผ ํ์
tmpP = list(word)
if tmpP == sorted(tmpP):
ans = cnt
break
isFrist = False
for i in range(N-K+1):
newP = list(tmpP)
targetP = newP[i:i+K]
targetP.reverse()
for j in range(K):
newP[i+j]=targetP[j]
newWord = "".join(newP)
if newWord not in visited:
visited.add(newWord)
q.append([newWord, cnt+1])
print(ans)
๋ฐ์ํ
'Programming > ๋ฐฑ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ํผ๋ฐ์ค (0) | 2023.09.02 |
---|---|
230228 [2775: ๋ถ๋ ํ์ฅ์ด ๋ ๊ฑฐ์ผ] (0) | 2023.09.02 |
230219 [10026: DFS] (0) | 2023.09.02 |
230219 [2606: DFS] (0) | 2023.09.02 |
230219 [1260: DFS&BFS] (0) | 2023.09.02 |
๊ณต์ง์ฌํญ
์ต๊ทผ์ ์ฌ๋ผ์จ ๊ธ
์ต๊ทผ์ ๋ฌ๋ฆฐ ๋๊ธ
- Total
- Today
- Yesterday
๋งํฌ
TAG
- lgaimers
- DALLE
- WGAN
- gan
- ์ฝ๋ฉ์๋ฌ
- Aimers
- ํ ํฌ์๋ฐ
- ๊ตฌ๊ธ์ฝ๋ฉ
- ์ฝ๋ฉ๊ณต๋ถ
- ์คํ ์ด๋ธ๋ํจ์
- SQL
- ๋ ผ๋ฌธ์ฝ๊ธฐ
- ํ์ด์ฌ์ฝํ
- ๊ธฐ์ ์ปจํผ๋ฐ์ค
- ๋๋ฆผ๋ถ์ค
- HyperCLOVA
- ์ฝํ
- ์ฝํ ์ค๋น
- AIRUSH
- ํ๋ก๊ทธ๋๋จธ์ค
- StableDiffusion
- CLOVAX
- ๋ ผ๋ฌธ๋ฆฌ๋ทฐ
- MYSQL
- dreambooth
- ํ์ด์ฌ
- C์ธ์ด
- AI์ปจํผ๋ฐ์ค
- SKTECHSUMMIT
- AIRUSH2023
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 |
๊ธ ๋ณด๊ดํจ