1. 程式人生 > >NOIp2003乒乓球(普及組)————模擬

NOIp2003乒乓球(普及組)————模擬

題解:本題主要考查模擬,不難但題面是一大坑,主要還是考細心。
程式碼如下:

#include<iostream>
#include<stdlib.h>
using namespace std;
int no1=0,no2=0,No1=0,No2=0,i=1,q=0;
char a[3000000];
int main()
{
    while(cin>>a[i]&&a[i]!='E')
    {
        if(a[i]=='W'){no1++;}
        else if(a[i]=='L'){no2++;}
        if((no1>=11||no2>=11)&&(no1-no2>=2||no2-no1>=2))
        { 
        cout<<no1<<":"<<no2<<endl;
        no1=0;
        no2=0;
        }
        i++;q++;
    }if(q!=0)
    cout<<no1<<":"<<no2<<endl<<endl; 
    for(int j=1;j<=i;j++)
    {
    	if(a[j]=='W')No1++;
    	if(a[j]=='L')No2++;
    	if((No1>=21||No2>=21)&&(No1-No2>=2||No2-No1>=2))
        { 
        cout<<No1<<":"<<No2<<endl;
        No1=0;
        No2=0;
        }
    }
    if(No1!=0||No2!=0)
    cout<<No1<<":"<<No2<<endl;
    if(q==0)
    {
        cout<<"0:0"<<endl<<endl;
        cout<<"0:0"<<endl<<endl;
    }
    system("pause");
    return 0;
}