codeforces round #394 (div. 2) A\B 题解

开始啦~

始まった

T1

#include <stdio.h>
int l,r,even,odd;
void Jud(){
    for(int i=1;i<=200;i++){
        for(int j=i;j<=200;j++){
            odd=even=0;
            for(int k=i;k<=j;k++)
                k&1?odd++:even++;
            if(even==l&&odd==r){
                puts("YES");
                return;
            }
        }
    }
    puts("NO");
}
int main(){
    scanf("%d%d",&l,&r);
    Jud();
    return 0;
}

T2

#include <math.h>
#include <stdio.h>
#include <memory.h>
int n,L,a[55],b[55],ta[105],tb[105];
bool Jud(){
    for(int l=0;l<L;l++)
        if(ta[l]!=tb[l])
            return 0;
    return 1;
}
void solve(){
    for(int i=0;i<n;i++)
        tb[b[i]]++;
    for(int k=1;k<=L;k++){
        memset(ta,0,sizeof ta);
        for(int i=0;i<n;i++)
            ta[(++a[i])%=L]++;
        if(Jud()){
            puts("YES");
            return;
        }
    }
    puts("NO");
}
int main(){
    scanf("%d%d",&n,&L);
    for(int i=0;i<n;i++)
        scanf("%d",&a[i]);
    for(int i=0;i<n;i++)
        scanf("%d",&b[i]);
    solve();
    return 0;
}
 

  

posted @ 2017-01-31 22:20  keshuqi  阅读(141)  评论(0编辑  收藏  举报