题目描述
下の階から順に 1, 2, …, 2N の番号がついた 2N 階から成る建物があります。
この建物のエレベーターが 1 度だけ 1 階から 2N 階まで動きました。
この途中で、 N 人が乗り降りしました。人 i (1 ≤ i ≤ N) は、それぞれエレベーターに Ai 階で乗り、Bi 階で降りました。ただし、1 ≤ Ai < Bi ≤ 2N であり、それぞれの階で乗り降りした人はただ 1 人です。
また、この N 人は気難しいため、以下の条件が満たされていました。
- 人 i (1 ≤ i ≤ N) がエレベーターに乗っているとき、他の人が乗り降りした回数を Ci (= Bi − Ai − 1) で表すと、次の条件が成り立つ
- 人 i と人 j が同時にエレベーターに乗っていた瞬間が存在するならば、Ci = Cj である
A, B は記録されていましたが、残念なことに、記録の一部が消えてしまいました。Ai, Bi が消えている場合は −1 として与えられます。
また、残っている記録も誤っている可能性があります。
残っている記録に矛盾しないような A, B の組み合わせが存在するかどうか判定してください。
输入格式
入力は以下の形式で標準入力から与えられる。
N A1 B1 A2 B2 : AN BN
输出格式
残っている記録に矛盾しないような A, B の組み合わせが存在する場合は Yes
を、しない場合は No
を出力せよ。
题目大意
有 n 个区间 [ai,bi](ai<bi),都是 [1,2n] 内的整数且互不相同(ai=bj,ai=aj,bi=bj)。
现在给定一些 a 和 b 的值,剩下不知道的用 −1 表示。问是否存在一种替换掉 −1 的方案,使得:若两个区间有交,那么它们长度相等。
也就是 $\forall i,j,[a_i,b_i]\cap[a_j,b_j]\ne \varnothing\Rightarrow b_i-a_i=b_j-a_j$。
n≤100。
3
1 -1
-1 4
-1 6
Yes
2
1 4
2 3
No
2
4 1
2 4
No
提示
制約
- 1 ≤ N ≤ 100
- Ai = −1 または 1 ≤ Ai ≤ 2N
- Bi = −1 または 1 ≤ Bi ≤ 2N
- 入力は全て整数である
Sample Explanation 1
例えば、B1 = 3, A2 = 2, A3 = 5 であった場合、全ての条件を満たします。 この場合、人 1, 2 が同時にエレベーターに乗っている瞬間がありますが、C1 = C2 = 1 であるので問題ありません。
Sample Explanation 2
人 1, 2 が同時にエレベーターに乗っている瞬間がありますが、C1 = 2, C2 = 0 なのでいずれかの情報が誤っています。
Sample Explanation 3
記録は全て残っているように見えますが、明らかに誤っています。