목록Baekjoon (38)
T-coding

https://www.acmicpc.net/problem/3190 3190번: 뱀 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임 www.acmicpc.net 코드 더보기 from collections import deque n = int(input()) k = int(input()) apple = [] rot = {} dy = [0, 1, 0, -1] dx = [1, 0, -1, 0] for _ in range(k): a, b = map(int, input().split()) apple.append((a, b)) l = int(input()) for _ in..

https://www.acmicpc.net/problem/14503 14503번: 로봇 청소기 첫째 줄에 방의 크기 $N$과 $M$이 입력된다. $(3 \le N, M \le 50)$ 둘째 줄에 처음에 로봇 청소기가 있는 칸의 좌표 $(r, c)$와 처음에 로봇 청소기가 바라보는 방향 $d$가 입력된다. $d$가 $0$인 경우 북쪽 www.acmicpc.net 코드 더보기 n, m = map(int, input().split()) r, c, d = map(int, input().split()) arr = [] visited = [[False] * m for _ in range(n)] dy = [-1, 0, 1, 0] dx = [0, 1, 0, -1] for _ in range(n): arr.append(..

https://www.acmicpc.net/problem/5567 5567번: 결혼식 예제 1의 경우 2와 3은 상근이의 친구이다. 또, 3과 4는 친구이기 때문에, 4는 상근이의 친구의 친구이다. 5와 6은 친구도 아니고, 친구의 친구도 아니다. 따라서 2, 3, 4 3명의 친구를 결혼식에 초대 www.acmicpc.net 코드 더보기 from collections import deque def bfs(x): q = deque() visited[x] = 1 q.append(x) while q: now = q.popleft() for i in arr[now]: if visited[i] == 0: q.append(i) visited[i] = visited[now] + 1 n = int(input()) m ..

https://www.acmicpc.net/problem/5397 5397번: 키로거 첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스는 한줄로 이루어져 있고, 강산이가 입력한 순서대로 길이가 L인 문자열이 주어진다. (1 ≤ L ≤ 1,000,000) 강산이가 백스페이스를 입 www.acmicpc.net 코드 더보기 t = int(input()) for _ in range(t): s = list(input()) left, right = [], [] for i in s: if i == '': if right: left.append(right.pop()) elif i == '-': if left: left.pop() else: left.append(i) left.extend(reversed(r..

https://www.acmicpc.net/problem/4198 4198번: 열차정렬 에린은 엔지니어이자, 기차를 운전하는 기관사입니다. 또한 그녀는 각 열차를 구성하는 차량을 배열하는 일도 합니다. 그녀는 차량들을 정렬할 때, 열차의 전면에 가장 무거운 차량을 놓고, 후 www.acmicpc.net 코드 더보기 n = int(input()) arr = [int(input()) for _ in range(n)] dp1 = [0 for _ in range(n)] dp2 = [0 for _ in range(n)] ans = 0 for i in reversed(range(n)): for j in range(i + 1, n): if arr[j] > arr[i]: dp2[i] = max(dp2[i], dp2[j..

https://www.acmicpc.net/problem/3186 3186번: 소변기 입력의 첫 번째 줄은 세 정수 K, L, N (1 ≤ K, L ≤ 1000, 1 ≤ N ≤ 10,000)이 있다. 두 번째 줄은 0과 1로 이루어진 길이 N의 수열이 주어진다. 이것은 주어진 시간에 센서가 기록하는 데이터를 나타낸다 www.acmicpc.net 코드 더보기 import re k, l, n = map(int, input().split()) s = input() arr = [st.end() - 1 for st in re.finditer('1' * k, s)] ans = [] if len(arr) == 0: print("NIKAD") exit() for i in range(len(arr) - 1): if s[..

https://www.acmicpc.net/problem/14467 14467번: 소가 길을 건너간 이유 1 3번 소는 위치 1, 0, 1에서 관찰되었으므로 길을 최소 두 번 건넜음을 확인할 수 있다. 4번 소도 길을 한 번 건넜으며, 나머지 소는 길을 건넌 기록이 확인되지 않는다. www.acmicpc.net 코드 더보기 n = int(input()) arr = {} ans = 0 for i in range(n): a, b = map(int, input().split()) if a not in arr: arr[a] = b else: if arr[a] != b: arr[a] = b ans += 1 print(ans)

https://www.acmicpc.net/problem/3024 3024번: 마라톤 틱택토 상근(Albert), 민혁(Barbara), 선영(Casper), 창영(Dinko), 현진(Eustahije)이가 마라톤 틱택토 게임을 하려고 한다. 이 게임은 N×N 보드에서 진행한다. 맨 처음에 보드의 모든 칸은 비어있다. 플레이어는 턴을 www.acmicpc.net 코드 더보기 n = int(input()) arr = [input() for _ in range(n)] if n < 3: print('ongoing') exit() for i in range(n - 2): for j in range(n - 2): if arr[i][j] != '.': if arr[i][j] == arr[i + 1][j + 1] =..