codeforces Hello 2019(未写完)

时间:2025-05-01 10:03:56

A. Gennady and a Card Game

a题惯例签到题

题意:给你一张牌,再给你5张牌,判断能不能出一次牌...

所以只要检查第二行中的某个卡是否与第一行中的卡具有共同字符

有就输出YES否则输出NO

#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
char a,b,s[101];
bool tf=0;
int main(){
scanf("%c%c",&a,&b);
for(int i=0;i<5;i++){
scanf("%s",s);
if(s[0]==a||s[1]==b) tf=1;
}
if(tf) cout<<"YES"<<endl;
else cout<<"NO"<<endl;
return 0;
}

  

B. Petr and a Combination Lock

题意:检查角度是否为360度的倍数。

这题让我第一次见识到了被hack...

#include<iostream>
#include<cstdio>
using namespace std;
int a[101],n,x;
bool tf=0;
int main(){
scanf("%d",&n);
for(int i=1;i<=n;++i)
scanf("%d",&a[i]);
for(int i=0;i<1<<n;++i){
x=0;
for(int j=1;j<=n;++j)
if((1<<(j-1))&i) x+=a[j];
else x-=a[j];
if((x==0)||(x%360==0)) tf=1;
}
if (tf) cout<<"YES"<<endl;
else cout<<"NO"<<endl;
return 0;
}