Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 딥러닝 보코더
- 딥러닝
- 윈도우
- 딥러닝 음성 합성
- 트레이닝
- korean tts
- DCTTS
- tacotron
- Vocoder
- YOLO
- 음성 합성
- 보코더
- text-to-speech
- 학습
- 타코트론
- you only look once
- 노래합성
- deep voice
- TTS
- 한국어 음성 합성
- melgan
- waveglow
- 한국어 tts
- singing voice synthesis
Archives
- Today
- Total
chldkato
백준 1938 통나무 옮기기 (파이썬) 본문
https://www.acmicpc.net/problem/1938
1. 통나무의 좌표 3개를 묶어서 저장한다
2. 이동 횟수를 카운트하기위해 현재 큐의 길이를 기준으로 이동한다
3. 현재위치에서 회전과 이동을 문제의 조건대로 구현한다
4. 목적지에 도달하면 cnt 출력
from collections import deque
import sys
input = sys.stdin.readline
dx = [1, -1, 0, 0, 1, 1, -1, -1]
dy = [0, 0, 1, -1, 1, -1, 1, -1]
def bfs(x):
q.append(x)
c.append(x)
cnt = 0
while q:
qlen = len(q)
while qlen:
x = q.popleft()
if x == e:
print(cnt)
return
check_turn(x)
for i in range(4):
check = []
flag = 0
for j in range(3):
nx = x[j][0] + dx[i]
ny = x[j][1] + dy[i]
if 0 <= nx < n and 0 <= ny < n and a[nx][ny] != '1':
check.append([nx, ny])
else:
flag = 1
break
if check not in c and flag == 0:
c.append(check)
q.append(check)
qlen -= 1
cnt += 1
print(0)
def check_turn(x):
for i in range(4, 8):
nx = x[1][0] + dx[i]
ny = x[1][1] + dy[i]
if nx < 0 or ny < 0 or nx >= n or ny >= n or a[nx][ny] == '1':
return
if x[0][0] == x[1][0]:
tx = x[1][0]; ty = x[1][1]
if a[tx-1][ty] != '1' and a[tx+1][ty] != '1':
nb = [[tx-1, ty], [tx, ty], [tx+1, ty]]
if nb not in c:
c.append(nb)
q.append(nb)
elif x[0][1] == x[1][1]:
tx = x[1][0]; ty = x[1][1]
if a[tx][ty-1] != '1' and a[tx][ty+1] != '1':
nb = [[tx, ty-1], [tx, ty], [tx, ty+1]]
if nb not in c:
c.append(nb)
q.append(nb)
n = int(input())
a = [list(input().strip()) for _ in range(n)]
c, b, e = [], [], []
q = deque()
for i in range(n):
for j in range(n):
if a[i][j] == 'B':
b.append([i, j])
elif a[i][j] == 'E':
e.append([i, j])
bfs(b)
'백준' 카테고리의 다른 글
백준 9328 열쇠 (파이썬) (0) | 2020.02.21 |
---|---|
백준 16236 아기 상어 (파이썬) (0) | 2020.02.21 |
백준 2234 성곽 (파이썬) (0) | 2020.02.20 |
백준 1194 달이 차오른다, 가자. (파이썬) (0) | 2020.02.20 |
백준 1939 중량제한 (파이썬) (0) | 2020.02.18 |
Comments