382 条题解
-
0
xuyinuo LV 9 @ 2006-11-15 12:20:23
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms -
02006-11-05 19:21:55@
编译通过...
├ 测试数据 01:运行超时|无输出...
├ 测试数据 02:答案错误... ├ 标准行输出
├ 错误行输出
├ 测试数据 03:答案错误... ├ 标准行输出
├ 错误行输出
├ 测试数据 04:答案错误... ├ 标准行输出
├ 错误行输出
├ 测试数据 05:答案错误... ├ 标准行输出
├ 错误行输出
├ 测试数据 06:运行超时|无输出...
├ 测试数据 07:运行超时|无输出...
├ 测试数据 08:答案错误... ├ 标准行输出
├ 错误行输出
├ 测试数据 09:答案错误... ├ 标准行输出
├ 错误行输出
├ 测试数据 10:答案错误... ├ 标准行输出
├ 错误行输出
---|---|---|---|---|---|---|---|-
Unaccepted 有效得分:0 有效耗时:0ms -
02006-11-03 21:11:27@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
├ 测试数据 08:答案正确... 0ms
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0ms纪念下
注意1 数组要开大 2 打球规则 。。。。。。 -
02006-10-12 20:50:40@
同意SharnHoiste
用Fish测,第6组TLE,第7组WA
7组: 标准行输出:0:11
错误行输出:20:0依靠Puppy,成功AC
庆祝^_^ -
02006-10-04 14:41:04@
刚开始没有考虑到分差大于等于2时才算赢,结果只拿了50分。
后来加上这一步之后就AC了! -
02006-10-02 22:11:23@
小弟有问题,在算完11制时,已经把输入读到尾了,有什么语句可以重新指向头,然后算21制?
-
02006-09-27 18:22:30@
注意3点
1. 一般情况下 首先达到11分或者21分的会赢
2. 达到11分或21分后, 必须比对手多两分这局才算赢 不然一直比下去。
3. Puppy的服务器没有任何问题 和对于Fish等服务器有的时候第7组数据会出现答案错误 莫名其妙。 -
02006-09-25 12:27:22@
一定要把数组开到十万啊(我只开1000,过4个,开100000后就AC了)^-^
-
02006-09-24 15:09:02@
郁闷...评测机差距好大啊.....当评测机是Vivid Puppy的时候.我通过了.其他的评测机我都90分,第6个超时...!!!
-
02006-09-23 10:32:00@
跳楼……看楼下的题解时搞得我心惊肉跳的,我刚学信息的时候做的就是这题……也是一边就过……
char c;
long a[25000][2],b[25000][2],i,l1,l2;
我就用了这点变量一遍过了…… -
02006-09-18 14:20:08@
不边读边做也可以,分享一下我的算法。
先开1个s数组(string),再依次读行,如果全部是空格就删掉,然后将所有字符串并到大字符串st(ansistring)里,并用o(length(st))的时间去掉所有多于空格,剩下的就很简单了~ -
02006-09-11 19:57:40@
其实就是边读边做,将结果记录到一个数组里,最后统一输出(别忘了输出当前比分,包括Star_Gym大牛提醒的0:0)。我这样做一次就A了。
-
02006-09-09 16:35:47@
To xrara:
大概是你数组开小了......第六个数据是五万个'W'........
ma数组起码要开到2500..............P.S.我终于懂了!@!
必须要边读边写11的那组才能过.....
偶试了n次读完再写,无数次的unaccepted....
还有,第十个数据11:0之后,应该要有0:0...这个比较..晕.. -
02006-09-04 20:26:03@
数组改成10万就行了~~~(还不行就改成100万)~~~呵呵
-
02006-09-03 21:54:49@
当两人的比分之差小于等于1,且其中一人达到21或11时,比赛不算结束,
直到比分之差大于1为止! -
-12021-05-19 09:38:56@
import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; import java.util.Scanner; /** * @author wpx * @version V1.0 * @Package com.algorithm * @date 2021/5/18 14:05 */ public class Main { public static void main(String[] args) { Scanner sc = new Scanner(new BufferedReader(new InputStreamReader(System.in))); StringBuilder builder = new StringBuilder(); while(true){ final String oneLine = sc.nextLine(); int endPos = oneLine.indexOf("E"); if(endPos != -1){ // 表明有结束符 builder.append(oneLine.substring(0, endPos).replaceAll("\\s", "")); break; } else { builder.append(oneLine.replaceAll("\\s", "")); } } String str = builder.toString(); int wNum = 0; int lNum = 0; List<String> resultOne = new ArrayList<>(); for(int i = 0; i < str.length(); i++){ String winner = String.valueOf(str.charAt(i)); if(winner.equals("W")){ wNum++; } else { lNum++; } // 判断是否已经有胜负 if(wNum >= 11 || lNum >= 11) { // 判断是否存在加赛的情况 if(wNum >= 10 && lNum >= 10) { // 判断比分差异是否大于2 if(wNum - lNum == 2 || wNum - lNum == -2){ resultOne.add(wNum + ":" + lNum); lNum = 0; wNum = 0; } } else { resultOne.add(wNum + ":" + lNum); lNum = 0; wNum = 0; } } } resultOne.add(wNum + ":" + lNum); lNum = 0; wNum = 0; List<String> resultTwo = new ArrayList<>(); for(int i = 0; i < str.length(); i++){ String winner = String.valueOf(str.charAt(i)); if(winner.equals("W")){ wNum++; } else { lNum++; } // 判断是否已经有胜负 if(wNum >= 21 || lNum >= 21) { // 判断是否存在加赛的情况 if(wNum >= 20 && lNum >= 20) { // 判断比分差异是否大于2 if(wNum - lNum == 2 || wNum - lNum == -2){ resultTwo.add(wNum + ":" + lNum); lNum = 0; wNum = 0; } } else { resultTwo.add(wNum + ":" + lNum); lNum = 0; wNum = 0; } } } resultTwo.add(wNum + ":" + lNum); for(String tmpObj : resultOne){ System.out.println(tmpObj); } System.out.println(); for(String tmpObj : resultTwo){ System.out.println(tmpObj); } } }
-
-12020-12-22 22:36:46@
0:0的属实坑爹
match = [] list1 = [] s = 0 w = 0 l = 0 while True: list1 = list(input()) for i in list1: if i != 'E': match.append(i) else: s = 1 break if s == 1: break for i in match: if i == 'W': w+=1 if i == 'L': l+=1 if (w >= 11 or l >= 11) and (w - l >= 2 or l - w >= 2): print('{:.0f}:{:.0f}'.format(w,l)) w = 0 l = 0 continue if w > 0 or l > 0: print('{:.0f}:{:.0f}'.format(w,l)) if w == 0 and l == 0: print("0:0") print() w = 0 l = 0 for i in match: if i == 'W': w+=1 if i == 'L': l+=1 if (w >= 21 or l >= 21) and (w - l >= 2 or l - w >= 2): print('{:.0f}:{:.0f}'.format(w,l)) w = 0 l = 0 continue if w > 0 or l > 0: print('{:.0f}:{:.0f}'.format(w,l),end=' ') if w == 0 and l == 0: print("0:0",end=' ')
-
-12020-07-17 09:56:02@
用python关键要注意,print是默认回车的!
坑了我1h啊这个问题
用print("23333", end='')可以取消默认会车Str = '' while 1: a = input() if 'E' in a: Str+=a.split("E")[0] break else: Str+=a #11分 nW=0;nL=0 for i in Str: if i == 'W': nW+=1 else: nL+=1 if (nW>=11 or nL>=11) and abs(nW-nL)>=2: print("%s:%s\n" % (nW,nL)) nW=0;nL=0 print("%s:%s\n" % (nW,nL)) print('\n') #21分 nW=0;nL=0 for i in Str: if i == 'W': nW+=1 else: nL+=1 if (nW>=21 or nL>=21) and abs(nW-nL)>=2: print("%s:%s\n" % (nW,nL)) nW=0;nL=0 print("%s:%s" % (nW,nL), end='')
-
-12019-08-01 19:39:49@
#include<stdio.h>
#include<string.h>
int main()
{
char s[100000]={0},c;
int i=0,W=0,L=0,x=0,y=0,cnt;
scanf("%c",&c);
while(c!='E')
{
s[i++]=c;
if(c=='W')W++;
else if (c=='L')L++;
if((W-L>=2&&W>=11)||(L-W>=2&&L>=11))
{
printf("%d:%d\n",W,L);
L=0,W=0;
}
scanf("%c",&c);
}
printf("%d:%d\n\n",W,L);
for(cnt=0;cnt<i;cnt++)
{
if(s[cnt]=='W')x++;
else if (s[cnt]=='L')y++;
if((x-y>=2&&x>=21)||(y-x>=2&&y>=21))
{
printf("%d:%d\n",x,y);
x=0,y=0;
}
}
printf("%d:%d\n\n",x,y);
return 0;
} -
-12019-08-01 19:39:37@
#include<stdio.h>
#include<string.h>
int main()
{
char s[100000]={0},c;
int i=0,W=0,L=0,x=0,y=0,cnt;
scanf("%c",&c);
while(c!='E')
{
s[i++]=c;
if(c=='W')W++;
else if (c=='L')L++;
if((W-L>=2&&W>=11)||(L-W>=2&&L>=11))
{
printf("%d:%d\n",W,L);
L=0,W=0;
}
scanf("%c",&c);
}
printf("%d:%d\n\n",W,L);
for(cnt=0;cnt<i;cnt++)
{
if(s[cnt]=='W')x++;
else if (s[cnt]=='L')y++;
if((x-y>=2&&x>=21)||(y-x>=2&&y>=21))
{
printf("%d:%d\n",x,y);
x=0,y=0;
}
}
printf("%d:%d\n\n",x,y);
return 0;
}