四十分求助:看过题解并做出过对应的修改
查看原帖
四十分求助:看过题解并做出过对应的修改
90347
NiII_CMeNOH_2楼主2023/11/12 15:51
#include<bits/stdc++.h>
using namespace std;
struct bs
{
	int l;
	int r;
};//比赛状况的记录;别问,问就是花里胡哨
int main()
{
	bs yy[5000],ey[5000];
	for(int i=1;i<5000;i++) { yy[i].l=-1;yy[i].r=-1;ey[i].l=-1;ey[i].r=-1;}//初始化
	yy[0].l=0;yy[0].r=0;ey[0].l=0;ey[0].r=0;
	char p; int n1=0,n2=0;
	while(1)
	{
		cin>>p;
		if(p=='E') break;
		yy[n1].l+=int(p=='W');
		yy[n1].r+=int(p=='L');
		ey[n2].l+=int(p=='W');
		ey[n2].r+=int(p=='L');//边读入边加
		if((yy[n1].l>=11||yy[n1].r>=11)&&(yy[n1].l-yy[n1].r>1||yy[n1].l-yy[n1].r<-1))
		{n1++;yy[n1].l=0;yy[n1].r=0;}
		if((ey[n2].l>=21||ey[n2].r>=21)&&(ey[n2].l-ey[n2].r>1||ey[n2].l-ey[n2].r<-1))
		{n2++;ey[n2].l=0;ey[n2].r=0;}//确保出现0:0
	}
	for(int i=0;yy[i].l!=-1;i++) cout<<yy[i].l<<':'<<yy[i].r<<endl;
	cout<<endl;
	for(int i=0;ey[i].l!=-1;i++) cout<<ey[i].l<<':'<<yy[i].r<<endl;//输出
	return 0;
    }

已经修正了的问题有:

1.最后一个点的0:0

2.超过两分的差距才开始下一局

2023/11/12 15:51
加载中...