https://www.acmicpc.net/problem/14938코드const fs = require("fs");const filePath = process.platform === "linux" ? "dev/stdin" : "./input.txt";const input = fs.readFileSync(filePath).toString().trim().split("\n");const [n, m, r] = input[0] .trim() .split(" ") .map((val) => +val);const itemCount = input[1] .trim() .split(" ") .map((val) => +val);const roads = input.slice(2).map((val) => val ..
플로이드워셜
https://www.acmicpc.net/problem/1719코드import sysinput = sys.stdin.readlineINF = int(1e9)n, m = map(int, input().split())graph = [[INF]*(n+1) for _ in range(n+1)]path_table = [["-"]*(n+1) for _ in range(n+1)]for i in range(1, n+1): graph[i][i] = 0for _ in range(m): a, b, t = map(int, input().split()) graph[a][b] = t graph[b][a] = t path_table[a][b] = b path_table[b][a] = afor k ..
2660번: 회장뽑기 입력의 첫째 줄에는 회원의 수가 있다. 단, 회원의 수는 50명을 넘지 않는다. 둘째 줄 이후로는 한 줄에 두 개의 회원번호가 있는데, 이것은 두 회원이 서로 친구임을 나타낸다. 회원번호는 1부터 www.acmicpc.net 코드 n = int(input()) dist = [[50]*(n+1) for _ in range(n+1)] for i in range(1, n+1): dist[i][i] = 0 while True: a, b = map(int, input().split()) if a == -1 and b == -1: break dist[a][b] = 1 dist[b][a] = 1 # Floyd-Warshall for k in range(1, n+1): for i in range(..

2458번: 키 순서 1번부터 N번까지 번호가 붙여져 있는 학생들에 대하여 두 학생끼리 키를 비교한 결과의 일부가 주어져 있다. 단, N명의 학생들의 키는 모두 다르다고 가정한다. 예를 들어, 6명의 학생들에 대하여 www.acmicpc.net 코드 처음 풀이 import sys input = sys.stdin.readline n, m = map(int, input().split()) dist = [[[int(1e9), -int(1e9)] for _ in range(n+1)] for _ in range(n+1)] for i in range(n+1): dist[i][i] = [0, 0] for _ in range(m): a, b = map(int, input().split()) # a < b dist[a]..
1058번: 친구 지민이는 세계에서 가장 유명한 사람이 누구인지 궁금해졌다. 가장 유명한 사람을 구하는 방법은 각 사람의 2-친구를 구하면 된다. 어떤 사람 A가 또다른 사람 B의 2-친구가 되기 위해선, 두 사람 www.acmicpc.net 문제 지민이는 세계에서 가장 유명한 사람이 누구인지 궁금해졌다. 가장 유명한 사람을 구하는 방법은 각 사람의 2-친구를 구하면 된다. 어떤 사람 A가 또다른 사람 B의 2-친구가 되기 위해선, 두 사람이 친구이거나, A와 친구이고, B와 친구인 C가 존재해야 된다. 여기서 가장 유명한 사람은 2-친구의 수가 가장 많은 사람이다. 가장 유명한 사람의 2-친구의 수를 출력하는 프로그램을 작성하시오. A와 B가 친구면, B와 A도 친구이고, A와 A는 친구가 아니다. 입..