전력 공급망 분할
시간 제한1초메모리 제한512 MB
공급 또는 수요가 있는 정점과 용량이 있는 간선으로 이루어진 트리에서 간선을 일부 삭제해 각 부분트리가 정확히 하나의 공급을 포함하고 그 공급이 부분트리 수요 합 이상이 되도록 만들 수 있는지 판정한다.
문제
정점이 개인 트리 가 전력 공급망이다. 의 각 정점은 공급 정점이거나 수요 정점이다. 공급 정점에는 공급량, 수요 정점에는 수요량이라는 양의 정수가 하나씩 붙어 있다. 각 수요 정점은 공급 정점 하나에서만 의 간선을 따라 전력을 받고, 그 결과 간선마다 전력이 흐른다. 각 간선에는 용량이라는 양의 정수가 붙어 있다.
간선을 지워서 를 여러 부분 트리로 분할한다. 간선을 하나도 지우지 않아서 자체가 분할 결과가 되어도 된다. 다만 다음 두 조건을 모두 만족해야 한다.
- 각 부분 트리는 공급 정점을 정확히 하나 포함하고, 그 공급량이 부분 트리에 있는 모든 수요량의 합보다 작지 않다.
- 각 간선에 흐르는 전력이 그 간선의 용량을 넘지 않는다.
에 이런 분할이 존재하는지 판정하라.
그림 1(a)는 트리 의 예다. 공급 정점은 직사각형, 수요 정점은 원으로 그렸고, 공급량과 수요량은 도형 안에 적었으며 용량은 간선마다 붙였다. 그림 1(b)는 조건을 만족하는 분할 하나를 보여준다. 지운 간선은 파선, 각 부분 트리의 경계는 점선으로 표시했고, 간선에 적은 수가 그 간선에 흐르는 전력이며 화살표가 흐름의 방향이다.

그림 1. 분할의 예.
입력
첫 줄에 트리 의 정점 개수 이 주어진다 (). 정점은 으로 나타낸다.
이어지는 개 줄 중 번째 줄에는 두 정수 와 가 주어진다 (는 0 또는 1, ). 이면 정점 는 공급량이 인 공급 정점이고, 이면 정점 는 수요량이 인 수요 정점이다.
그 다음 개 줄에는 각각 세 정수 , , 가 주어진다 (, ). 이는 정점 와 정점 를 잇고 용량이 인 간선을 뜻한다.
출력
조건을 만족하는 분할이 에 존재하면 1, 존재하지 않으면 0을 한 줄에 출력한다.