A
#include<bits/stdc++.h>
using namespace std;
const int maxn = 1e5 + 10;
char s[maxn];
char str[10] = "jessie";
int main(){
int t;
scanf("%d", &t);
while(t--){
scanf("%s", s);
int len = strlen(s);
for(int i=0;i<len;i++) {
if(s[i]>='A' && s[i] <= 'Z')
s[i] += 32;
}
if(strcmp(s, str) == 0) puts("Good guy!");
else puts("Dare you say that again?");
}
return 0;
}
G
#include<bits/stdc++.h>
using namespace std;
#define clr(a) memset(a,0,sizeof(a))
#define line cout<<"----------"<<endl
typedef long long ll;
const ll MOD = 1e9+7;
const ll maxn = 1e5+10;
const ll INF = 0x3f3f3f3f;
const ll MAXN = 1e6+10;
string s;
ll ans = 0;
ll qkm(ll a, ll b, ll c = MOD){
ll s = 1; a %= c;
while(b){
if(b & 1) s = s * 1ll * a % c;
b >>= 1;
a = a * 1ll * a % c;
}
return s;
}
int main(){
ll t;
cin >> t;
while(t--){
ans = 0;
cin >> s;
for(ll i = 0; s[i]; i++){
ans = ans * 10 + (s[i] - '0');
ans %= (MOD - 1);
}
ll cnt = qkm(2, ans, MOD) * 1LL % MOD;
cnt = cnt *qkm(2, MOD - 2, MOD) % MOD;
cnt %= MOD;
printf("%lld\n", cnt);
}
return 0;
}
I
#include<bits/stdc++.h>
using namespace std;
int main(){
int a,b,c;
while(scanf("%d%d%d",&a,&b,&c)!=EOF) {
if(a%2==0 || b%2==0 || c%2==0) printf("Yes\n");
else printf("No\n");
}
}
L
#include<bits/stdc++.h>
using namespace std;
#define clr(a) memset(a,0,sizeof(a))
#define line cout<<"----------"<<endl
typedef long long ll;
const ll Mod = 1000000007;
const ll maxn = 1e5+10;
const ll INF = 0x3f3f3f3f;
const ll MAXN = 1e6+10;
const ll N = 4;
struct Matrix{//定义N*N的矩阵
ll m[N][N];
};
ll n, ans;
Matrix Mul(Matrix a,Matrix b)//定义矩阵的乘法
{
Matrix c;
memset(c.m, 0, sizeof(c.m));
for(ll i=0; i<N; i++)
for(ll j=0; j<N; j++)
for(ll k=0; k<N; k++)
c.m[i][j] = (c.m[i][j] + (a.m[i][k]*b.m[k][j])%Mod + Mod)%Mod;//根据题意取模
return c;
}
Matrix fastm(Matrix a,ll n) {//矩阵的快速幂
Matrix res;
memset(res.m, 0, sizeof(res.m));
res.m[0][0] = res.m[1][1] = res.m[2][2] = res.m[3][3] = 1;
while(n){//快速幂
if(n & 1)
res = Mul(res, a);
a = Mul(a, a);
n >>= 1;
}
return res;
}
int main(){
ll t;
scanf("%lld", &t);
Matrix tot ;
memset(tot.m,0,sizeof(tot.m));
tot.m[0][0] = 106; tot.m[1][0] = 46;
tot.m[2][0] = 20; tot.m[3][0] = 9;
Matrix a = {
2,-1,3,2,
1,0,0,0,
0,1,0,0,
0,0,1,0,
};
while(t--){
scanf("%lld", &n);
if(n <= 5){
if(n == 5) ans = 106;
else if(n == 4) ans = 46;
else if(n == 3) ans = 20;
else if(n == 2) ans = 9;
else if(n == 1) ans = 3;
}
else{
Matrix res = fastm(a, n-5);
res = Mul(res, tot);
ans = res.m[0][0] % Mod;
}
printf("%lld\n", ans);
}
return 0;
}