정점에 부터 까지 번호가 붙은 트리가 주어진다. 처음에 모든 정점의 값은 이다.
다음과 같은 쿼리를 개 처리한다.
경로의 양 끝 정점도 포함한다. 쿼리의 방향에 따라 더하는 값이 달라질 수 있다. 모든 쿼리를 처리한 뒤 각 정점의 값을 으로 나눈 나머지를 구하여라.
입력은 다음과 같은 형식으로 주어진다. 첫째 줄에 정점의 수 과 쿼리의 수 가 주어진다. 다음 개 줄의 는 트리의 간선을 나타내고, 다음 개 줄의 는 쿼리를 나타낸다. 이면 간선 줄은 없고, 이면 쿼리 줄은 없다.
정점 의 최종 값을 각각 으로 나눈 나머지를 공백으로 구분하여 한 줄에 출력한다.
첫 쿼리의 경로는 , 둘째는 , 셋째는 이다. 최종 값은 순서대로 이다.
| 3 | 55 | 추가적인 제약이 없다. |
첫 쿼리에서는 을, 둘째에서는 을 각 정점에 더한다. 모든 정점의 최종 값은 이다.