Written by Master

大师  •  4个月前


include <bits/stdc++.h>

using namespace std;

define _debug 0

void fector(int c, string s); const int num1 = 11; const int num2 = 21;

int main() {

string s, ss;
while (1)
{
    cin >> ss;
    int i = count(ss.begin(), ss.end(), 'E');

    if (i != 0)
    {
        int j = ss.find('E');
        ss.erase(j);
        s += ss;
        break;
    }

    s += ss;
    if (ss.length() < 20)
    {
        break;
    }
}

/*cout << endl;
for (char a : s)
{
    cout << a;
}
cout << endl;*/
// cout << s.size();
fector(num1, s);
cout << endl;
fector(num2, s);

ifdef _debug

system("echo. & pause");

endif

// cout << s;
return 0;

}

void fector(int rule, string s) {

int x = 0, y = 0; // 当前局的比分
int j = 0;        // 当前处理的位置
int length = s.length();

while (j < length && (x < rule && y < rule || abs(x - y) < 2))
{
    // 处理一个球的结果
    if (s[j] == 'W')
    {
        x++;
    }
    else if (s[j] == 'L')
    {
        y++;
    }
    j++;

    // 判断是否结束这一局
    if ((x >= rule || y >= rule) && abs(x - y) >= 2)
    {
        cout << x << ":" << y << endl; // 输出当前局比分
        x = 0;
        y = 0;
    }
}

for (int i = j; i < length; i++)
{
    // 处理一个球的结果
    if (s[j] == 'W')
    {
        x++;
    }
    else if (s[j] == 'L')
    {
        y++;
    }
}
cout << x << ":" << y << endl; // 输出当前局比分

}

/* void fector(int c, string s) { if (c == 11) {

 int x = 0, y = 0;
 int j = 0;
 for (; j < (s.length() / num1); j++)
 {
     for (int i = 0; i < num1; i++)
     {
         if (s[i] == 'W')
         {
             x++;
         }
         else if (s[i] == 'L')
         {
             y++;
         }
         else if (s[i] == 'E')
         {
             goto back1;
         }
     }
     cout << x << ":" << y << endl;
     x = 0;
     y = 0;
 }
 x = 0;
 y = 0;
 j = j * num1;
 for (; j < s.length(); j++)
 {
     if (s[j] == 'W')
     {
         x++;
     }
     else if (s[j] == 'L')
     {
         y++;
     }
     else if (s[j] == 'E')
     {
         goto back1;
     }
 }
 cout << x << ":" << y << endl;
 x = 0;
 y = 0;

back1:

 return;

} else if (c == 21) {

 int x = 0, y = 0;
 int j = 0;
 for (; j < (s.length() / num2); j++)
 {
     for (int i = 0; i < num2; i++)
     {
         if (s[i] == 'W')
         {
             x++;
         }
         else if (s[i] == 'L')
         {
             y++;
         }
         else if (s[i] == 'E')
         {
             goto back2;
         }
     }
     cout << x << ":" << y << endl;
     x = 0;
     y = 0;
 }
 x = 0;
 y = 0;
 j = j * num2;
 for (; j < s.length(); j++)
 {
     if (s[j] == 'W')
     {
         x++;
     }
     else if (s[j] == 'L')
     {
         y++;
     }
     else if (s[j] == 'E')
     {
         goto back2;
     }
 }
 cout << x << ":" << y << endl;
 x = 0;
 y = 0;

back2:

 return;

} } */


评论:

请先登录,才能进行评论