하루일문
[백준] 14938번 서강그라운드(파이썬) 본문
문제
14938번: 서강그라운드
예은이는 요즘 가장 인기가 있는 게임 서강그라운드를 즐기고 있다. 서강그라운드는 여러 지역중 하나의 지역에 낙하산을 타고 낙하하여, 그 지역에 떨어져 있는 아이템들을 이용해 서바이벌을
www.acmicpc.net
코드
import sys
input = sys.stdin.readline
INF = int(10e9)
city, area, road = map(int, input().split())
item = [0]+list(map(int, input().split()))
ground = [[INF] * (city + 1) for _ in range(city + 1)]
for i in range(road):
area_1, area_2, dist = map(int, input().split())
ground[area_1][area_2] = min(ground[area_1][area_2], dist)
ground[area_2][area_1] = min(ground[area_2][area_1], dist)
for i in range(1, city+1):
for j in range(1, city+1):
for k in range(1, city+1):
if j == k:
ground[j][k] = 0
ground[j][k] = min(ground[j][k], ground[j][i] + ground[i][k])
max_item = 0
for i in range(1, city + 1):
cnt = 0
for j in range(1, city + 1):
if ground[i][j] <= area:
cnt += item[j]
max_item = max(max_item, cnt)
print(max_item)
'algorithm > baekjoon' 카테고리의 다른 글
[백준] 1010번 다리 놓기 (0) | 2023.07.28 |
---|---|
[백준] 1173번 운동 (0) | 2023.06.23 |
[백준] 1058번 친구(파이썬) (1) | 2023.05.20 |
[백준] 시리얼 번호 (파이썬) (0) | 2023.05.16 |
[백준] 4153번 직각삼각형(파이썬) (0) | 2023.05.09 |