石头剪刀布
#include<cstdio>
using namespace std;
bool pk(int j, int k) {
if (j == 0 && k == 5) {
return false;
}
if(j == 0 && k == 2){
return true;
}
if(j == 2 && k == 5){
return true;
}
if(j == 2 && k == 0){
return false;
}
if(j == 5 && k == 2){
return false;
}
if(j == 5 && k == 0){
return true;
}
}
int main() {
int N, NA, NB;
int a[100];
int b[100];
int aw=0,bw=0;
scanf("%d%d%d", &N, &NA, &NB);
for (int i = 0; i < NA ; i++)
{
scanf("%d", &a[i]);
}
for (int i = 0; i < NB; i++)
{
scanf("%d", &b[i]);
}
for (int i = 0; i < N; i++){
if (a[i % NA] == b[i % NB]) continue;
bool ju = pk(a[i%NA],b[i%NB]);
if (ju) {
//printf("Aw\n");
aw++;
}
if (!ju){
//printf("Bw\n");
bw++;
}
}
//printf("%d\n%d\n",aw,bw);
if (aw > bw) printf("A");
if (aw < bw) printf("B");
if (aw == bw) printf("draw");
return 0;
}
09:向量点积计算
#include<cstdio>
using namespace std;
int main() {
int n,result=0;
int a[1001],b[1001];
scanf("%d",&n);
for(int i = 1;i<=n;i++) scanf("%d",&a[i]);
for(int i = 1;i<=n;i++) scanf("%d",&b[i]);
for(int i = 1;i<=n;i++) result += a[i]*b[i];
printf("%d",result);
return 0;
}