1 条题解

  • 0

    思路

    模拟题,没啥好说,按部就班写就行。

    code

    #include<bits/stdc++.h>
    using namespace std;
    int sc[25*2501+10];
    char t='6';
    int maxsc,win,lose;
    int main(){
    	int ind=0;
    	while(t!='E'){
    		cin>>t;
    		if(t=='E')	break;
    		sc[ind++]=(t=='W');//如果t是'w',sc[ind++]为1,否则为0
    	}
    	for(int sz=0;sz<2;sz++){
    		win=0;//赢
    		lose=0;//输
    		maxsc=(sz?21:11);//一局最大分数
    		for(int i=0;i<ind;i++){
    			sc[i]?win++:lose++;
    			if((win>=maxsc||lose>=maxsc)&&(abs(win-lose)>=2)){//超过一局最大分且分差>=2
    				printf("%d:%d\n",win,lose);
    				win=0;
    				lose=0;
    			}
    		}
    		printf("%d:%d\n",win,lose);//没结束的也得输出
    		printf("\n");
    	}
    	return 0;
    }
    
    • 1

    信息

    ID
    370
    时间
    1000ms
    内存
    256MiB
    难度
    8
    标签
    递交数
    24
    已通过
    5
    上传者