미친 가중치 배치
시간 제한2초메모리 제한1024 MB
트리의 각 간선에 0 또는 1을 적어, 주어진 m개 경로의 XOR 값이 순서대로 비내림차순이 되도록 하는 경우의 수를 998244353으로 나눈 나머지로 구합니다.
문제
조커는 트리를 가지고 있고, 그 트리에서 개의 단순 경로 , , , 을 골랐습니다. 각 경로는 양 끝 정점 와 로 주어지며, 모든 경로의 길이는 0이 아닙니다. 즉 입니다.
조커는 트리의 각 간선에 정수 0 또는 1을 적으려 합니다. 를 번째 경로 위 간선 가중치의 합을 2로 나눈 나머지로 정의합니다. 이 값은 그 경로에 있는 모든 간선 가중치의 XOR과 같습니다. 모든 에 대해 이면 그 가중치 배치를 미친 배치라고 합니다.
미친 배치의 개수를 구하세요. 답은 998244353으로 나눈 나머지로 구합니다.
입력
첫 줄에 트리의 정점 수 과 선택된 경로의 개수 이 주어집니다 ().
둘째 줄에는 개의 정수 가 주어집니다. 이는 정점 와 정점 을 잇는 간선이 있다는 뜻입니다 ().
이후 개의 줄에는 번째 경로의 양 끝 와 가 한 줄에 하나씩 주어집니다 ().
출력
미친 배치의 개수를 998244353으로 나눈 나머지를 한 줄에 출력합니다.