전자 회로
시간 제한1초메모리 제한1024 MB
무방향 다중 그래프가 주어질 때, 두 끝 노드를 골라 직렬과 병렬 연결만으로 만들어지는 회로인지 판별합니다.
문제
준은 일반물리학 2를 수강하고 있으며 지금은 전자 회로를 공부하고 있다. 전자 회로는 여러 개의 노드와 방향이 없는 전선으로 이루어지며, 각 전선은 서로 다른 두 노드를 잇는다. 회로에는 전압이 걸리는 두 끝 노드, 즉 소스 노드와 싱크 노드가 있다. (보통 두 노드를 배터리가 달린 전선으로 잇지만, 이 문제에서는 이를 무시한다.) 각 전선에는 저항이 있고, 준은 회로의 합성 저항을 계산할 줄 알아야 한다.
준은 복잡한 것을 싫어하므로 직렬 연결과 병렬 연결로만 만들어진 회로에만 관심이 있다. 이런 회로는 합성 저항을 계산하기 쉽다. 그는 이런 회로를 좋은 회로라고 부른다. 형식적으로 좋은 회로는 다음과 같이 정의한다.
- 두 끝 노드를 잇는 전선 하나로 이루어진 회로는 좋은 회로다.
- 좋은 회로 의 싱크 노드와 좋은 회로 의 소스 노드를 하나의 노드로 합친 회로는 좋은 회로다. 결과 회로의 소스 노드는 의 소스 노드이고, 싱크 노드는 의 싱크 노드다.
- 좋은 회로 과 의 두 소스 노드를 하나로 합치고, 두 싱크 노드도 하나로 합친 회로는 좋은 회로다. 결과 회로의 두 끝 노드는 각각 합쳐진 노드다.

그림: 좋은 회로의 정의를 나타낸 그림.
준은 합성 저항을 구하려고 전선으로 회로를 만들었지만, 친구 Pringles가 회로를 망가뜨려서 이제 준은 끝 노드가 어디인지 모른다. 설상가상으로 이 회로가 좋은 회로인지도 확실하지 않다.
준이 회로를 알려준다. 두 끝 노드를 적절히 골라서 이 회로가 좋은 회로가 될 수 있는지 판단하라. 두 노드를 잇는 전선이 여러 개 있을 수 있다는 점에 유의하라.
입력
첫째 줄에 두 정수 과 이 주어진다 (, ). 은 노드의 개수이고, 은 전선의 개수다. 모든 노드는 1부터 까지 번호가 매겨져 있다.
이어서 개의 줄에 각각 전선이 잇는 두 정수 와 가 주어진다 (, ). 모든 노드에는 전선이 하나 이상 연결되어 있다.
출력
주어진 회로가 좋은 회로가 될 수 있으면 Yes, 그렇지 않으면 No를 출력한다.