zhixiuya 2021-11-08 19:32 采纳率: 0%
浏览 38

pta锤子剪刀布,想问一下大家为什么测试点三四五没有过


#include<iostream>
#include<string>
using namespace std;
int main() {
    int n;
    cin>>n;
    int a1,a2,d;
    a1=a2=d=0;
    int jia[3];
    int yi[3];
    for(int i=0; i<3; i++) {
        jia[i]=0;
        yi[i]=0;
    }
    for(int i=0; i<n; i++) {
        char a,b;
        cin>>a>>b;
        if(a==b) d++;
        else if(a=='B'&&b=='C') {
            a1++;
            jia[0]++;
        } else if(a=='C'&&b=='J') {
            a1++;
            jia[1]++;
        } else if(a=='J'&&b=='B') {
            a1++;
            jia[2]++;
        } else {
            a2++;
            if(b=='B'&&a=='C') yi[0]++;
            if(b=='C'&&a=='J') yi[1]++;
            else yi[2]++;
        }
    }
    cout<<a1<<" "<<d<<' '<<a2<<endl;
    cout<<a2<<' '<<d<<' '<<a1<<endl;
    int max1=0,max2=0,i1=0,i2=0;

    for(int i=0; i<3; i++) {
        if(jia[i]>max1) {
            max1=jia[i];
            i1=i;
        }
        if(yi[i]>max2) {
            max2=yi[i];
            i2=i;
        }
    }

    if(i1==0) cout<<'B'<<' ';
    if(i1==1) cout<<'C'<<" ";
    if(i2==2) cout<<'J'<<' ';
    if(i2==0) cout<<'B';
    if(i2==1) cout<<'C';
    if(i2==2) cout<<'J';
    return 0;
}

十分感谢

  • 写回答

2条回答 默认 最新

  • CSDN专家-link 2021-11-08 19:36
    关注

    题目及测试点信息贴出来看看
    32行有问题
    if(b=='C'&&a=='J') yi[1]++;
    应该改为 else if(b=='C'&&a=='J') yi[1]++;

    评论

报告相同问题?

问题事件

  • 创建了问题 11月8日

悬赏问题

  • ¥15 Android studio打开dex
  • ¥20 为何R语言love图显示的分类变量点与smd值不一致
  • ¥15 asp.net实验:数据库写入不成功
  • ¥15 C#视频播放器的原码,有的发一
  • ¥15 用FDTD计算并提取光栅结构的正负一级衍射光的光功率
  • ¥30 AVL fire DVI中的Design Explorer里面的Run的Status为什么总是Terminated?哪里出问题了?需要修改哪里?
  • ¥15 有二开IOT平台code的来搞钱了。
  • ¥15 求lingo语言编程以下内容
  • ¥15 cannot import name '_MissingValues' from 'sklearn.utils._param_validation'引用smoke
  • ¥15 求PHP跨站免登录技术