B - レートで2分割! Editorial /

Time Limit: 2 sec / Memory Limit: 1024 MB

配点 : 300

問題文

N 人のパ研部員が、円環上に配置されています。そしてまた彼らには、時計回りに 1 から N までの番号が振られています。

各パ研部員にはレートと呼ばれる値が定まっており、部員 i のレートは A_i です。

パ研部長であるペンギンくんは、N 人のパ研部員を円環上で連続した 2 つのグループに分け、片方のグループに含まれるパ研部員のレートの総和を X に、もう片方のグループに含まれるパ研部員のレートの総和を Y にしたいと考えています。

これが可能かを判定してください。

制約

  • 2 \leq N \leq 2 \times 10^5
  • 1 \leq X,Y \leq 10^{15}
  • 1 \leq A_i \leq 10^9
  • 入力は全て整数

小課題

  1. (100 点) N \leq 3000
  2. (200 点) 追加の制約はない

入力

入力は以下の形式で標準入力から与えられる。

N X Y
A_1 A_2 \ldots A_N

出力

N 人のパ研部員を問題文中にある通りに 2 つのグループに分けることが可能なら Yes を、不可能なら No を出力せよ。


入力例 1

5 6 11
3 4 2 3 5

出力例 1

Yes

部員 2 と部員 31 つのグループに、残りの部員をもう片方のグループに分類すると、それぞれのグループに含まれる部員のレートの総和は順に X=6Y=11 となります。

この入力はすべての小課題の制約を満たします。


入力例 2

4 4 8
1 2 3 4

出力例 2

No

N 人のパ研部員を問題文中にある通りに 2 つのグループに分けることは不可能です。

この入力はすべての小課題の制約を満たします。


入力例 3

10 191 376
72 6 62 98 90 61 36 82 9 51

出力例 3

Yes

この入力はすべての小課題の制約を満たします。

原案: penguinman