这个代码在pta上面显示输出0最多的的答案错误,可是我自己随便输入了一个0最多的是对的,这个到底怎么搞才能正确呀
1条回答 默认 最新
- 花辞树dor 2023-01-20 22:59关注
您好,错误原因是条件考虑不全。题目第二行给定的数据均是非负整数,题主只考虑了s为正整数的情况,增加对0单独考虑的代码即可。
增加的代码参考如下:if (s == 0) a[0]++;
除此之外,while循环体可以优化一下,建议如下:
while (s) //不知道为什么下面代码字体变灰...... { k = s % 10; a[k]++; s /= 10; }
如果对本回答有疑问,欢迎在回答下方评论!
如果本回答成功帮到你,麻烦动动手指点个采纳,谢谢啦~本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录