본문 바로가기
반응형

분류 전체보기157

[프로그래머즈/Python] 2022 블라인드 카카오 - 양궁대회 문제2022 KAKAO BLIND RECRUITMENT의 양궁대회 문제입니다. https://school.programmers.co.kr/learn/courses/30/lessons/92342 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 코드def solution(n, info): def get_score_diff(ryan, apeach): sr, sa = 0, 0 for i in range(11): if ryan[i] > apeach[i]: sr += (10 - i) elif apeach[i] > .. 2025. 1. 5.
[백준/Python] 11758번 CCW 문제https://www.acmicpc.net/problem/11758 소스코드p1 = list(map(int, input().split()))p2 = list(map(int, input().split()))p3 = list(map(int, input().split()))def ccw(p1, p2, p3): return ((p2[0] - p1[0]) * (p3[1] - p2[1])) - ((p3[0] - p2[0]) * (p2[1] - p1[1]))result = ccw(p1, p2, p3)if result > 0: print(1)elif result  ccw를 세 점이 이루는 방향을 판단하는 데 사용합니다. 점 a, b, c가 있을때 a -> b -> c의 ccw 알고리즘 결과가 양수라면 반.. 2025. 1. 2.
[백준/Python] 32690번 Starlight Express 문제https://www.acmicpc.net/problem/32690 소스코드import sysinput = sys.stdin.readlinen = int(input())parent = [i for i in range(n + 1)]rank = [0] * (n + 1)size = [1] * (n + 1) # 각 집합의 크기xy = [[0, 0] for _ in range(n + 1)]dict_r_x = {}dict_r_y = {}bu = set()def find(x): if x != parent[x]: parent[x] = find(parent[x]) return parent[x]def union(x, y): x_root = find(x) y_root = find(y).. 2024. 12. 4.
[백준/Python] 1238번 파티 - (다익스트라) 문제 https://www.acmicpc.net/problem/1238 소스코드# from collections import dequeimport heapq# 어느 날 이 N명의 학생이 X (1 ≤ X ≤ N)번 마을에 모여서 # 파티를 벌이기로 했다. # 이 마을 사이에는 총 M개의 단방향 도로들이 있고 # i번째 길을 지나는데 Ti(1 ≤ Ti ≤ 100)의 시간을 소비한다.n, m, x = map(int, input().split())graph = {}for i in range(m): start, end, time = map(int, input().split()) if start not in graph: graph[start] = [] graph[start].append.. 2024. 11. 27.
[백준/Python] 1717번 집합의 표현 - (유니온파인드) 문제https://www.acmicpc.net/problem/1717 소스코드import sys input = sys.stdin.readlinesys.setrecursionlimit(10 ** 6)n, m =map(int, input().split())parent = [i for i in range(n + 1)]def union(a, b): a = find(a) b = find(b) if a b: parent[a] = bdef find(a): if a == parent[a]: return a parent[a] = find(parent[a]) return parent[a]def is_connected(a, b): return find(a) =.. 2024. 11. 26.
[백준/Python] 11404번 플로이드 문제https://www.acmicpc.net/problem/11404 소스코드import sysinput = sys.stdin.readlinen = int(input())m = int(input())graph = [[1e11 for _ in range(n + 1)] for _ in range(n + 1)]for i in range(n): graph[i + 1][i + 1] = 0for i in range(m): a, b, c = map(int, input().split()) graph[a][b] = min(graph[a][b], c)for k in range(1, n + 1): for i in range(1, n + 1): for j in range(1, n + 1):.. 2024. 11. 25.
[백준/Python] 2252번 줄 세우기 - (위상 정렬) 문제https://www.acmicpc.net/submit/2252/86061561 소스코드import sys from collections import dequeinput = sys.stdin.readlinen, m = map(int, input().split())indegree = [0] * ngrape = {}for i in range(m): a, b = map(int, input().split()) if a - 1 not in grape: grape[a - 1] = [] grape[a - 1].append(b - 1) indegree[b - 1] += 1queue = deque()for i in range(n): if indegree[i] == 0: .. 2024. 11. 24.
[백준/Python] 1922번 네트워크 연결 - (크루스칼) 문제https://www.acmicpc.net/problem/1922 소스코드import syssys.setrecursionlimit(10**8)input = sys.stdin.readlinegraph = []n = int(input())m = int(input())parent = [i for i in range(n + 1)]answer = 0 # union-find def find(x): if x == parent[x]: return x parent[x] = find(parent[x]) return parent[x]def union(x, y): x = find(x) y = find(y) if x != y: if x  유니온 파인드와 크루스칼 알고.. 2024. 11. 23.
[백준/Python] 1516번 게임 개발 - (위상정렬) 문제https://www.acmicpc.net/problem/1516 소스코드import sys from collections import dequeinput = sys.stdin.readlinequeue = deque()n = int(input())grape = {}indegree = [0] * nanswer = [0] * ntime = [0] * nfor i in range(n): data = list(map(int, input().split())) data_len = len(data) - 1 time[i] = data[0] indegree[i] = data_len - 1 if data_len - 1 == 0: queue.append(i) for j in .. 2024. 11. 22.
[백준/Python] 11657번 타임머신 - (벨만 포드) 문제https://www.acmicpc.net/problem/11657소스코드import sysinput = sys.stdin.readlinen, m = map(int, input().split())grape = {}for i in range(m): a, b, c = map(int, input().split()) if a not in grape: grape[a] = [] grape[a].append((b, c))def bellman_ford(start): distance_list = [1e9] * (n + 1) distance_list[start] = 0 for i in range(n - 1): for u in grape: .. 2024. 11. 21.
728x90
반응형