SOJ ONLINE JUDGE

2-SAT

난이도: Platinum IV 출제자: rlatjwls7882 시간 제한: 1000 ms 메모리 제한: 512 MB
강한 연결 요소2-sat

$N$개의 불 변수 $x_1$, $x_2$, $\ldots$, $x_N$이 있다.

각 변수에는 true 또는 false를 할당할 수 있다.

$M$개의 조건이 주어진다. 하나의 조건은 두 정수 $a$, $b$로 주어지며, 두 리터럴 중 하나 이상이 true여야 한다.

양의 정수 $k$는 $x_k$를 의미하고, 음의 정수 $-k$는 $\lnot x_k$를 의미한다.

모든 조건을 만족하도록 각 변수의 값을 정할 수 있는지 판별하라.

입력

첫 번째 줄에 변수의 개수 $N$과 조건의 개수 $M$이 주어진다. $(1 \leq N \leq 10\,000, 0 \leq M \leq 100\,000)$

두 번째 줄부터 $M$개의 줄에 걸쳐 하나의 조건을 나타내는 두 정수 $a$, $b$가 주어진다. $(-N \leq a,b \leq N, a \neq 0, b \neq 0)$

이는 $a$와 $b$ 중 하나 이상이 true여야 한다는 뜻이다.

출력

모든 조건을 만족하도록 변수의 값을 정할 수 있다면 Yes를, 그렇지 않다면 No를 출력한다.

예제 입력 1

3 4
1 2
-1 3
-2 3
-3 1

예제 출력 1

Yes

예제 입력 2

1 2
1 1
-1 -1

예제 출력 2

No

제출