mix_麻将_贪心

//
#include<bits/stdc++.h>
using namespace std;

const int N=1111;
int in[N];

int main()  // 表示手牌中有 ai 张编号为 i 的牌
{
    int n,x,y,i,j;
    
    while( cin>>n>>x>>y )
    {
        memset( in,0,sizeof( in ) );
        for( i=1;i<=n;i++ ) cin>>in[i];
        for( i=1;i<=n;i++ )
        {
            in[i]%=x;               // 不能提前MOD 需要保证当前值为0 就必须用后续值
            if( in[i] ) 
            {
                for( j=1;j<y;j++ )              // 
                {
                    in[i+j]-=in[i];             // 不是单张匹配
                    if( in[i+j]<0 ) break;      // i+j
                }
                if( j!=y ) break;
            }
        }   
        if( i==n+1 )    cout<<"Yes"<<endl;
        else            cout<<"No"<<endl;
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_63173957/article/details/124904536