Module: 심층적으로 검색하십시오. DFS


Problem

9 /12


부정 행위로 다운!

Problem

시험 중에 Floyd 교수는 일부 학생들이 메모를 주고받는 것을 발견했습니다. 처음에는 두 개를 모두 주고 싶었지만 그날 교수님이 친절하셔서 학생들을 두 그룹으로 나누어 사기를 친 사람과 속이게 한 사람으로 나누어 처음 두 사람에게만 주기로 했습니다.
 
교수는 메모를 교환한 모든 쌍의 학생에 대한 기록을 가지고 있습니다. 한 그룹의 학생에서 다른 그룹의 학생으로 메모 교환이 수행되도록 학생을 두 그룹으로 나눌 수 있는지 여부를 결정해야 합니다.
 
입력: 첫 번째 줄에는 학생 수와 메모를 교환하는 학생 쌍의 수인 두 개의 숫자 N과 M이 포함됩니다(1<=N< =100, 0<=M<=(N(N−1))/2. 다음으로, M 라인은 학생 쌍에 대한 설명을 포함합니다: 메모를 교환하는 학생의 수에 해당하는 두 개의 숫자(학생은 1부터 시작하여 번호가 매겨짐) 한 쌍의 학생이 최대 한 번 나열됩니다.

출력: Floyd 교수의 문제에 대한 답을 출력해야 합니다. 학생들을 두 그룹으로 나누는 것이 가능하다면 YES라고 인쇄하십시오. 그렇지 않으면 NO를 인쇄합니다.
<사업부>
<헤드> <일># <몸>
입력 출력
1
3 2
<디브>1 2
2 3
2
3 3
<디브>1 2
2 3
1 3
아니오