아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

사탕 공헌

시간 제한3초메모리 제한1024 MB

요약
국경을 넘을 때 사탕의 일정 비율을 올림해서 세금으로 내야 하는 무방향 그래프에서, 시작 나라에서 집까지 가져갈 수 있는 사탕의 최댓값을 구한다.
난이도

보통10점 중 6점

유형
그래프, 최단 경로, 그리디, 수학
정답자
아직 제출이 없습니다

문제

여행 중에 복권에 당첨되었다. 그런데 이 복권의 1등 상금은 현금이 아니라 사탕이었다! 이제 집으로 가져가야 할 사탕 더미가 생겼다. 다행히 트럭을 구할 수 있었으니, 이제 집으로 운전만 하면 된다.

트럭에 이렇게 많은 사탕을 싣고 한 나라에서 다른 나라로 가려면 세금을 내야 한다. 모두가 사탕을 좋아하므로, 이 세금을 사탕으로 낼 수 있다.

인터넷을 조금 뒤져서, 트럭으로 건널 수 있는 국경과 각 국경을 건널 때 내야 하는 세금 비율이 적힌 목록을 찾았다. 사탕을 소수로 낼 수 없고 사탕이 꽤 맛있으므로, 세관은 항상 올림한다. 국경을 넘어 가져가는 사탕 수에 대해서만 세금을 내면 된다.

집에 가져갈 수 있는 사탕의 최대 개수는 얼마인가?

입력

입력은 다음과 같다.

  • 한 줄에 정수 nn (2≤n≤1⋅1052\leq n\leq 1\cdot 10^5), mm (1≤m≤2⋅1051 \leq m \leq 2\cdot 10^5)이 주어진다. nn은 나라의 수, mm은 국경의 수이다.
  • 한 줄에 세 정수 ss (1≤s≤n1\leq s\leq n), tt (1≤t≤n1 \leq t \leq n, t≠st\neq s), cc (1≤c≤1091\leq c \leq 10^9)가 주어진다. ss는 복권에 당첨된 나라, tt는 집이 있는 나라, cc는 복권에서 얻은 사탕의 수이다.
  • 그다음 mm개의 줄에 세 정수 u,vu, v (1≤u,v≤n1\leq u, v \leq n, u≠vu\neq v)와 pp (0≤p≤1000 \leq p \leq 100)가 주어진다. pp는 나라 uu에서 vv로, 또는 그 반대로 갈 때 내야 하는 세금의 비율이다.

트럭을 타고 집에 갈 수 있고, 각 나라 쌍은 많아야 한 번만 주어진다.

출력

집에 도착했을 때 가져갈 수 있는 사탕의 최대 개수를 출력한다.

예제2

  1. 예제 1

    입력
    4 4
    1 4 1000
    1 2 25
    2 4 10
    1 3 4
    3 4 30
    
    예상 출력
    675
    
  2. 예제 2

    입력
    5 5
    1 5 6
    1 2 17
    2 5 19
    1 3 1
    3 4 1
    4 5 1
    
    예상 출력
    3