求助!C十个测试点全WA
查看原帖
求助!C十个测试点全WA
481910
克罗里121楼主2022/8/18 14:43

代码如下:

#include<bits/stdc++.h>
const int max = 63600;
bool arr[max]; //保存胜负状态
int main()
{
    char c;
    int i=0; //记录总共打了几球
    while(scanf("%c",&c)&&c!='E')
    {
        if(c=='W')
        arr[i]=1;
        if(c=='\n')
        continue;
        i++;
    }

    int q=0,w=0,l=0; //w记录赢的次数 l记录输的次数
    while(q<i) //进行11分制下的计算
    {
        while(abs(w-l)<2||w<11&&l<11) //判断是否可以区分胜负,如果分差小于2或者赢和输的球数都小于11,则继续循环
        {
            if(arr[q]) //如果arr[q]为1 ,表明赢了,反之为0则为输
            w++;
            else l++;
            q++;
            if(q>=i)
            break;
        }
        printf("%d:%d\n",w,l);
        w=l=0;
    }

    printf("\n");
    q=w=l=0;
    while(q<i) //进行21分制下的计算
    {
        while(abs(w-l)<2||w<21&&l<21)
        {
            if(arr[q])
            w++;
            else l++;
            q++;
            if(q>=i)
            break;
        }
        printf("%d:%d\n",w,l);
        w=l=0;
    }
}

这段代码跑测试用例没问题,我把出错的样例下载下来,自己跑了一遍,然后把结果存到一个word文档里,再把下载的结果放到另一个word文档,想通过word文档的比较找到有什么不同,结果反馈是没有不同,人麻了......

希望好心的大佬可以帮帮我,找一下到底是哪里的问题 QAQ

2022/8/18 14:43
加载中...