洛谷P1042 乒乓球——记录一下菜鸡的算法刷题历程
题目来源:https://www.luogu.com.cn/problem/P1042
简单描述:输入数行字符串,W代表我方得分,L代表对方得分,最后根据11分制与21分制的规则分别输出两种规则下的最终比分。
————
输入案例:
WWWWWWWWWWWWWWWWWWWW
WWLWE
————
输出案例:
11:0
11:0
1:1
21:0
2:1
————
这道题在学校的oj中做到过,是个十分简单的模拟,但题目描述有些迷惑,读取E后是否直接输出结果,还是换行后继续读取知道终止符没有说清楚,经测试是后者。可是发现案例仍有两个WA,我理了理模拟逻辑发现没问题,一时半会儿也想不到bug在哪,就下载了测试案例,发现是.in与.out文件。由于不清楚其用法,就上网搜索了一下,发现在用C++读取时和一般文本文件没啥区别,就直接修改后缀为txt查看测试案例,发现当第一个字符就为E且不再输入时,程序仍需输出0:0,考虑到还有一组数据WA且不太可能和这个情况完全一样,我合理推测是读取结束后哪怕最后一轮是0:0(也就是上一轮刚好结束,下一轮实际上未开始)也要将其输出,修改后再次提交,成功AC。
最后感叹一下我贫瘠的想象力,debug时总是想不到这些神奇的情况。