모드 그래프
시간 제한1초메모리 제한2048 MB
연결된 그래프에서 정점을 방문할 때마다 카운터가 1 증가하고 b_v에서 0으로 돌아갑니다. 시작점 s에서 걸어서 모든 카운터를 0으로 만들 수 있는지 판단하고, 카운터 값을 바꾸는 쿼리를 처리합니다.
문제
무방향 연결 그래프가 주어진다. 정점은 개, 간선은 개이다. 각 정점 에는 를 법으로 하는 카운터가 있고, 초기 값은 이다. 정점 를 방문할 때마다 카운터는 1 증가하여 가 된다.
쿼리 개를 처리한다.
1 s: 정점 에서 출발했을 때, 모든 에 대해 으로 만들 수 있는지 판단한다. 그래프 위의 임의의 워크를 택할 수 있으며, 간선과 정점은 여러 번 사용해도 된다. 시작 정점 에서 출발하는 것도 를 방문한 것으로 세므로, 의 카운터는 처음에 1 증가한다.2 v x: 로 갱신한다.
입력
첫 줄에 세 정수 , , 가 주어진다 (, ). 둘째 줄에는 이, 셋째 줄에는 이 주어진다 (). 이어지는 개의 줄에는 간선의 양 끝 정점 , 가 주어진다 (, ). 주어지는 그래프는 연결되어 있다. 마지막 개의 줄에 쿼리가 주어진다.
1 s()2 v x(, )
출력
1 쿼리마다 모든 에 대해 으로 만들 수 있으면 YES, 없으면 NO를 한 줄에 출력한다.
힌트
첫 번째 쿼리에서는 정점 1에서 출발하고, 카운터 상태는 이다. 워크 를 따라가면 카운터 상태는 으로 바뀐다.