CF676E.The Last Fight Between Human and AI

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

100 years have passed since the last victory of the man versus computer in Go. Technologies made a huge step forward and robots conquered the Earth! It's time for the final fight between human and robot that will decide the faith of the planet.

The following game was chosen for the fights: initially there is a polynomial

P(x)=anxn+an1xn1+...+a1x+a0,P(x)=a_{n}x^{n}+a_{n-1}x^{n-1}+...+a_{1}x+a_{0}, with yet undefined coefficients and the integer kk . Players alternate their turns. At each turn, a player pick some index jj , such that coefficient aja_{j} that stay near xjx^{j} is not determined yet and sets it to any value (integer or real, positive or negative, 00 is also allowed). Computer moves first. The human will be declared the winner if and only if the resulting polynomial will be divisible by Q(x)=xkQ(x)=x-k .Polynomial P(x)P(x) is said to be divisible by polynomial Q(x)Q(x) if there exists a representation P(x)=B(x)Q(x)P(x)=B(x)Q(x) , where B(x)B(x) is also some polynomial.

Some moves have been made already and now you wonder, is it true that human can guarantee the victory if he plays optimally?

输入格式

The first line of the input contains two integers nn and kk ( 1<=n<=100000,k<=100001<=n<=100000,|k|<=10000 ) — the size of the polynomial and the integer kk .

The ii -th of the following n+1n+1 lines contain character '?' if the coefficient near xi1x^{i-1} is yet undefined or the integer value aia_{i} , if the coefficient is already known ( 10000<=ai<=10000-10000<=a_{i}<=10000 ). Each of integers aia_{i} (and even ana_{n} ) may be equal to 00 .

Please note, that it's not guaranteed that you are given the position of the game where it's computer's turn to move.

输出格式

Print "Yes" (without quotes) if the human has winning strategy, or "No" (without quotes) otherwise.

输入输出样例

  • 输入#1

    1 2
    -1
    ?
    

    输出#1

    Yes
    
  • 输入#2

    2 100
    -10000
    0
    1
    

    输出#2

    Yes
  • 输入#3

    4 5
    ?
    1
    ?
    1
    ?
    

    输出#3

    No

说明/提示

In the first sample, computer set a0a_{0} to 1-1 on the first move, so if human can set coefficient a1a_{1} to 0.50.5 and win.

In the second sample, all coefficients are already set and the resulting polynomial is divisible by x100x-100 , so the human has won.

首页