이상한 그래프
시간 제한1초메모리 제한128 MB
이웃 구조에 제약이 있는 연결 그래프에 해밀턴 사이클이 존재하는지 판정합니다.
- 난이도
어려움10점 중 9점
- 유형
- 그래프
- 정답자
- 아직 제출이 없습니다
문제
무향 그래프 를 생각하자. 정점 에 인접한 정점의 집합을 로 쓰고, 그 집합의 크기를 의 차수 라고 한다.
연결 그래프 의 모든 정점 가 다음 조건을 전부 만족하면 를 이상한 그래프라고 부른다.
- 이다.
- 이면 의 두 이웃은 서로 인접하지 않는다.
- 이면 다음 두 조건을 모두 만족하는 정점 가 존재한다.
- 이다.
- 에 속하는 서로 다른 두 정점 는 항상 인접하다. 즉 이다.
해밀턴 회로는 의 모든 정점을 정확히 한 번씩 지나는 회로다. 회로이므로 마지막 정점은 첫 정점과 인접하다.
이상한 그래프 가 주어진다. 에 해밀턴 회로가 있는지 판정하라.
입력
첫째 줄에 정점 수 과 간선 수 이 주어진다 (, ).
이어서 정수 개가 주어진다. 앞에서부터 두 개씩 묶으면 간선 하나의 두 끝점이다. 정점 번호는 부터 까지다. 수는 공백이나 줄바꿈으로 구분되고, 줄을 나누는 방식은 정해져 있지 않다. 같은 간선은 한 번만 주어지며, 한 간선의 두 끝점은 항상 서로 다르다. 가 이상한 그래프라는 것은 보장된다.
출력
에 해밀턴 회로가 있으면 YES를, 없으면 NO를 출력한다.