- 乒乓球
- 2016-08-31 21:57:56 @
这题有坑吧?!
最后一个点WA了,其他全AC。。。
求大神来看看
#include<iostream>
#include<cstdlib>
#include<cstdio>
#include<cmath>
#include<algorithm>
#include<cmath>
#include<cstring>
using namespace std;
char ch,a[1000001];
int n,w11,l11,w21,l21;
int main()
{
while(scanf("%c",&ch) && ch!='E') a[n++]=ch;
if(n==0)
{
puts("0:0");
puts("");
puts("0:0");
return 0;
}
for(int i=0;i<n;i++)
{
if(w11 >= 11)
{
if( abs(w11-l11) >=2)
{
printf("%d:%d\n",w11,l11);
w11=0;
l11=0;
}
}
if(l11 >= 11)
{
if( abs(w11-l11) >=2)
{
printf("%d:%d\n",w11,l11);
w11=0;
l11=0;
}
}
if(a[i]=='W') w11++;
else if(a[i]=='L') l11++;
}
printf("%d:%d\n\n",w11,l11);
if(n==1) puts("0:0");
for(int i=0;i<n;i++)
{
if(w21 >= 21)
{
if( abs(w21-l21) >=2)
{
printf("%d:%d\n",w21,l21);
w21=0;
l21=0;
}
}
if(l21 >= 21)
{
if( abs(w21-l21) >=2)
{
printf("%d:%d\n",w21,l21);
w21=0;
l21=0;
}
}
if(a[i]=='W') w21++;
else if(a[i]=='L') l21++;
}
printf("%d:%d\n\n",w21,l21);
if(n==1) puts("0:0");
}
6 条评论
-
聪明的猪 (xxz) LV 6 @ 2018-03-11 16:52:27
C++实现:
#include <iostream> #include <string> using std::string; void processing(string, int); int main(void) { using std::cin; using std::cout; using std::endl; bool run; int i; string result, winAndLose; run = true; while (run) { getline(cin, winAndLose); int len = int(winAndLose.length()); if(len > 20) { len = 20; } for (i = 0; i < len; i++) { switch (winAndLose.at(i)) { case '\0': run = false; i = int(winAndLose.length()); break; case 'E': run = false; i = int(winAndLose.length()); break; case 'W': result += winAndLose.at(i); break; case 'L': result += winAndLose.at(i); break; default: break; } } } processing(result, 11); cout << endl; processing(result, 21); return 0; } void processing(string winOrLose, int winScore) { using std::cout; using std::endl; int huaWin, huaLose, i; huaLose = 0; huaWin = 0; for(i = 0; i < int(winOrLose.length()); i++) { if ('W' == winOrLose.at(i)) { huaWin++; } else if ('L' == winOrLose.at(i)) { huaLose++; } if (((huaLose >= winScore) || (huaWin >= winScore)) && ((huaLose - huaWin > 1) || (huaWin - huaLose > 1))) { cout << huaWin << ":" << huaLose << endl; huaLose = 0; huaWin = 0; } } cout << huaWin << ":" << huaLose << endl; return; }
-
2016-09-02 19:11:11@
@lrj124 您的代码我在其他网站看过,只求有谁能改我的代码
-
2016-09-02 14:11:43@
#include <algorithm> #include <iostream> #include <map> using namespace std; //ifstream cin("table.in",ios :: in); //ofstream cout("table.out",ios :: out); int main() { ios :: sync_with_stdio(false); char ch; map <char,int> cnt11,cnt21; int tmp = 0,t[100001][2]; while (cin >> ch) { if (ch == 'E') break; if (ch != '\n') { cnt11[ch]++; cnt21[ch]++; } if ((cnt11['W'] >= 11 || cnt11['L'] >= 11) && abs(cnt11['W']-cnt11['L']) >= 2) { cout << cnt11['W'] << ':' << cnt11['L'] << '\n'; cnt11['W'] = 0; cnt11['L'] = 0; } if ((cnt21['W'] >= 21 || cnt21['L'] >= 21) && abs(cnt21['W']-cnt21['L']) >= 2) { t[++tmp][1] = cnt21['W']; t[tmp][2] = cnt21['L']; cnt21['W'] = 0; cnt21['L'] = 0; } } cout << cnt11['W'] << ':' << cnt11['L'] << "\n\n"; for (int i = 1;i <= tmp;i++) cout << t[i][1] << ':' << t[i][2] << '\n'; cout << cnt21['W'] << ':' << cnt21['L']; return 0; }
-
2016-09-01 21:40:38@
看不懂pascal,有没有人纠正我的c++代码
求大神 -
2016-09-01 19:27:23@
@ysm 这是pascal的
pascal
var
a,b:ansistring;
c:char;
i,w,l,n:longint;
begin
while c<>'E' do
begin
read(c);
if c='W'
then
begin
a:=a+c;
w:=w+1;
end;
if c='L'
then
begin
a:=a+c;
l:=l+1;
end;
if ((w>=11) or (l>=11)) and (abs(w-l)>=2)
then
begin
writeln(w,':',l);
w:=0;
l:=0;
end;
end;
writeln(w,':',l);
writeln;
w:=0;
l:=0;
for i:=1 to length(a) do
begin
if a[i]='W'
then
w:=w+1;
if a[i]='L'
then
l:=l+1;
if ((w>=21) or (l>=21)) and (abs(w-l)>=2)
then
begin
writeln(w,':',l);
w:=0;
l:=0;
end;
end;
writeln(w,':',l);
readln;
end.
-
2016-08-31 21:58:46@
评测结果
编译成功测试数据 #0: Accepted, time = 0 ms, mem = 1536 KiB, score = 10
测试数据 #1: Accepted, time = 0 ms, mem = 1532 KiB, score = 10
测试数据 #2: Accepted, time = 0 ms, mem = 1532 KiB, score = 10
测试数据 #3: Accepted, time = 15 ms, mem = 1532 KiB, score = 10
测试数据 #4: Accepted, time = 0 ms, mem = 1532 KiB, score = 10
测试数据 #5: Accepted, time = 15 ms, mem = 1532 KiB, score = 10
测试数据 #6: Accepted, time = 15 ms, mem = 1532 KiB, score = 10
测试数据 #7: Accepted, time = 0 ms, mem = 1536 KiB, score = 10
测试数据 #8: Accepted, time = 0 ms, mem = 1540 KiB, score = 10
测试数据 #9: WrongAnswer, time = 0 ms, mem = 1536 KiB, score = 0
WrongAnswer, time = 45 ms, mem = 1540 KiB, score = 90
- 1