본문 바로가기

728x90
반응형

전체 글

(122)
[백준 / 3055] 탈출 - Python https://www.acmicpc.net/problem/3055 3055번: 탈출 사악한 암흑의 군주 이민혁은 드디어 마법 구슬을 손에 넣었고, 그 능력을 실험해보기 위해 근처의 티떱숲에 홍수를 일으키려고 한다. 이 숲에는 고슴도치가 한 마리 살고 있다. 고슴도치는 제 www.acmicpc.net 한 그래프는 물의 이동을 그리는 그래프, 한 그래프는 거리를 담아두는 그래프를 그린다. import sys from collections import deque R, C = map(int, sys.stdin.readline().split()) graph = [] disGraph = [[float('inf') for _ in range(C)] for _ in range(R)] waters = [] for i i..
[백준 / 1922] 네트워크 연결 - Python https://www.acmicpc.net/problem/1922 1922번: 네트워크 연결 이 경우에 1-3, 2-3, 3-4, 4-5, 4-6을 연결하면 주어진 output이 나오게 된다. www.acmicpc.net 입력 받은 연결들을 작은 비용 순으로 정렬하고, 추가해가면 된다. a와 b가 같은 입력이 있으므로 해당 경우는 무시한다. import sys N = int(sys.stdin.readline()) M = int(sys.stdin.readline()) connections = [] for _ in range(M): a, b, c = map(int, sys.stdin.readline().split()) if a == b: continue connections.append([c, a, b]) ..
[백준 / 1043] 거짓말 - Python https://www.acmicpc.net/problem/1043 1043번: 거짓말 지민이는 파티에 가서 이야기 하는 것을 좋아한다. 파티에 갈 때마다, 지민이는 지민이가 가장 좋아하는 이야기를 한다. 지민이는 그 이야기를 말할 때, 있는 그대로 진실로 말하거나 엄청나게 www.acmicpc.net 파티 순서는 상관이 없다. 왜냐하면 거짓과 진실을 둘다 들을 수 없기 때문이다. 따라서 전염병 같이 진실을 알고 있는 사람과 만난사람, 그 만난 사람과 만난 사람들 모두 체크해서 해당 사람들이 들어간 파티를 제외하면 거짓말을 할 수 있는 파티가 된다. 따라서 n번 사람이 접촉하는 사람을 딕셔너리 형태로 만든 후, n번이 접촉한 사람 리스트를 queue에 넣어 이를 반복해서 접촉 리스트를 만든다. from c..
[백준 / 1022] 소용돌이 예쁘게 출력하기 - Python https://www.acmicpc.net/problem/1022 1022번: 소용돌이 예쁘게 출력하기 첫째 줄에 네 정수 r1, c1, r2, c2가 주어진다. www.acmicpc.net 모든 소용돌이를 다 그리려 했더니 메모리 초과가 나왔다..(예상했었지만,, 혹시 몰라서,,) 그래서 모든 소용돌이를 그리지만 원하는 부분만 따로 저장하여, 풀었다. r1, c1, r2, c2 = map(int, input().split()) m = max(abs(r1), abs(r2), abs(c1), abs(c2)) answer = [[0 for _ in range(c2-c1+1)] for _ in range(r2-r1+1)] for i in range(m): right_top = (2*(m-i))**2+1-2*(..
[백준 / 1261] 알고스팟 - Python https://www.acmicpc.net/problem/1261 1261번: 알고스팟 첫째 줄에 미로의 크기를 나타내는 가로 크기 M, 세로 크기 N (1 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 미로의 상태를 나타내는 숫자 0과 1이 주어진다. 0은 빈 방을 의미하고, 1은 벽을 의미 www.acmicpc.net 기존의 미로 탐색은 총 거리를 계산했다면, 이번 미로 탐색은 벽을 부순 횟수를 저장하면 된다. BFS로 풀었다. from collections import deque M, N = map(int, input().split()) graph = [] for _ in range(N): graph.append(list(map(int, input()))) temp_graph = [[-1..
[백준 / 1253] 좋다 - Python https://www.acmicpc.net/problem/1253 1253번: 좋다 첫째 줄에는 수의 개수 N(1 ≤ N ≤ 2,000), 두 번째 줄에는 i번째 수를 나타내는 Ai가 N개 주어진다. (|Ai| ≤ 1,000,000,000, Ai는 정수) www.acmicpc.net [풀이] 한 수를 다른 두 수의 합으로 나타내야 한다. 0 2가 있을 때 0+2는 2지만 다른 두 수가 아니므로 해당 경우는 카운트 하지 않고, 0 2 2 가 있을 때는 0+2[idx = 1]와 0+2[idx = 2]이므로 2개가 카운트 된다. [전체 코드] n = int(input()) numList = list(map(int, input().split())) numList.sort() # 중복 수 체크 # 수 개수 -1개..
[백준 / 1997] 최소 스패닝 트리 - Python https://www.acmicpc.net/problem/1197 1197번: 최소 스패닝 트리 첫째 줄에 정점의 개수 V(1 ≤ V ≤ 10,000)와 간선의 개수 E(1 ≤ E ≤ 100,000)가 주어진다. 다음 E개의 줄에는 각 간선에 대한 정보를 나타내는 세 정수 A, B, C가 주어진다. 이는 A번 정점과 B번 정점이 www.acmicpc.net 1. 가중치가 가장 작은 순서로 입력을 정렬한다. 2. 방문 리스트를 작성하되 연결되어 있지 않으면 다른 리스트로 작성한다. ex) 이전에 1,2 노드를 방문했고, 다음에 2,3 노드를 방문하면 방문 리스트에 3을 추가한다. 만약 4,5 노드를 방문하면 새 리스트에 4,5를 입력한다. 만약 다음에 3,4 노드를 방문하면 두 리스트를 합쳐서 1,2,3,..
[GitHub] 명령어 정리 1. git init 맨 처음 초기화 git remote add origin https://깃허브 repo 주소 git remote -v # 상태 확인 로컬 저장소와 깃허브 repo를 연결 2. git add "file_name" git add . 올리고 싶은 file name을 입력하거나, 모든 파일을 저장할 때 3. git commit -m "fist commit" 커밋해줌. -m뒤의 내용은 설명 4. git push origin master master가지 대신 다른 이름의 가지 넣으면 됨 git status # 상태 확인

728x90
반응형