목록분류 전체보기 (191)
정화 코딩
A. 완전 이진 트리 (백준 9934번) https://www.acmicpc.net/problem/9934 #python import sys input = sys.stdin.readline k = int(input()) visit = list(map(int, input().split())) tree = {} for i in range(1, pow(2, k-1)): tree[i] = [i*2, i*2 + 1, 0] for i in range(pow(2, k-1), pow(2, k)): tree[i] = ['.', '.', 0] def inOrder(now): global i if now != '.': inOrder(tree[now][0]) tree[now][2] = visit[i] i += 1 inOrde..
C++을 시작한 기념으로 새로 파는 꾸준히 문제 풀기 글!! 쉬운 문제들을 C++로 풀어보며 익혀보고자 한다. 2/19. Hello World (백준 2557번) https://www.acmicpc.net/problem/2557 //C++ #include using namespace std; int main() { cout > a >> b; cout str; cout > y; if (x > 0) if (y > 0) ans = 1; else ans = 4; else if (y > 0) ans = 2; else ans = 3; cout > a >> b >> c; if (a == b) if (b == c) prize = 10000 + a * 1000; else prize = 1000 + a * 100; els..
내 사용 언어에 대한 역사를 읊어보자면 이렇다. 우선 PS 입문은 C로 했다. 그 때는 C밖에 몰랐다... Ec.crew 스터디에서 본격적으로 (지금 보면 그다지 본격적이지도 않았음... 그치만 시작은 이 때가 맞다.) PS를 시작하게 되었다. 그런데 하다보니 C의 거지같은 점들 때문에 다른 언어를 하고 싶었다. 그 때는 그랬다... C를 사용하면 작은 것까지도 신경써야 되고 거의 모든 부분을 내가 구현해야 한다는 점이 공부에 도움이 된다면서 합리화했지만, python에 있는 라이브러리로 쉽게 문제를 푸는 것 같은 친구들을 보며 부럽지 않을 수가 없었다. 그래서 python에 입문하게 되었다. (그러지 말았어야 했어... 아냐 그래도 할 수 있는 언어가 하나 늘었다고 생각하자.) 고등학교 때 python..
09-3. 이진 트리 070. 트리 순회 (백준 1991번) https://www.acmicpc.net/problem/1991 from sys import stdin n = int(stdin.readline()) tree = {} for _ in range(n): self, left, right = stdin.readline().split() tree[self] = [left, right] def preOrder(now): if now != '.': print(now, end='') preOrder(tree[now][0]) preOrder(tree[now][1]) def inOrder(now): if now != '.': inOrder(tree[now][0]) print(now, end='') inOrd..
09-1. 트리 알아보기 067. 트리의 부모 찾기 (백준 11725번) https://www.acmicpc.net/problem/11725 from sys import stdin import sys sys.setrecursionlimit(10 ** 6) n = int(stdin.readline()) g = [[] for _ in range(n+1)] parent = [0] * (n+1) def dfs(pre, cur): for nxt in g[cur]: if nxt != pre: parent[nxt] = cur dfs(cur, nxt) for _ in range(n-1): a, b = map(int, stdin.readline().split()) g[a].append(b) g[b].append(a) d..
A. 호석이 두 마리 치킨 (백준 21278번) https://www.acmicpc.net/problem/21278 #python from sys import stdin import sys n, m = map(int, stdin.readline().split()) g = [[sys.maxsize for _ in range(n+1)] for _ in range(n+1)] for i in range(1, n+1): g[i][i] = 0 for _ in range(m): a, b = map(int, stdin.readline().split()) g[a][b] = 1 g[b][a] = 1 for i in range(1, n+1): # 경유지 i에 대해 for j in range(1, n+1): # 출발 노드 j..
08-6. 플로이드-워셜 061. 플로이드 (백준 11404번) https://www.acmicpc.net/problem/11404 from sys import stdin import sys n = int(stdin.readline()) m = int(stdin.readline()) g = [[sys.maxsize for _ in range(n+1)] for _ in range(n+1)] for i in range(n+1): g[i][i] = 0 for _ in range(m): a, b, c = map(int, stdin.readline().split()) if c < g[a][b]: g[a][b] = c for i in range(1, n+1): # 경유지 i에 관해 for j in range(1, ..
A. 지름길 (백준 1446번) https://www.acmicpc.net/problem/1446 #python from sys import stdin import sys from queue import PriorityQueue n, d = map(int, stdin.readline().split()) g = [[] for _ in range(10001)] visited = [False] * (10001) dst = [sys.maxsize] * (10001) que = PriorityQueue() for i in range(d): g[i].append((i+1, 1)) for _ in range(n): a, b, c = map(int, stdin.readline().split()) g[a].append(..