最后一个点一直过不去!难受
查看原帖
最后一个点一直过不去!难受
296149
多喝牛奶楼主2020/9/21 11:16

最后一个测试点不知道怎么判断!


#include<cstdio>
#include<cstring>
#include<cmath>
using namespace std;
const int maxn=5500+2;
int main()
{
    char a[maxn],ch;
    int w=0,l=0,f=0,j=0,s[maxn],q[maxn],k=0,n,m;
    memset(s,0,sizeof(s));
    memset(q,0,sizeof(q));
    while(cin>>ch)
    {
        if(ch=='E')
        {
            break;
        }
        if(abs(w-l)>=2&&(l>=11||w>=11))
        {
            printf("%d:%d\n",w,l);n=w;m=l;
            w=l=0;
        }
        if(abs(s[j]-q[j])>=2&&(s[j]>=21||q[j]>=21))
            j++;
        if(ch=='W')
        {
            w++;s[j]++;
        }
        else if(ch=='L')
        {
            l++;q[j]++;
        }
    }
    if((w!=0||l!=0)||(abs(n-m)>=2&&(n>=11||m>=11)))
    printf("%d:%d\n\n",w,l);
    for(k=0;k<=j;k++)
    {
        printf("%d:%d\n",s[k],q[k]);
    }
    if((s[k]!=0||q[k]!=0)||(abs(s[k-1]-q[k-1])>=2&&(s[k-1]>=21||q[k-1]>=21)))
        printf("%d:%d\n",s[k],q[k]);
    return 0;
}
2020/9/21 11:16
加载中...