我很好奇下面两段代码的区别是什么?
for(int i = 0; i < l; ++i) {
while('0' <= s[i] && s[i] <= '9') {
a[ct] = a[ct] * 10 + s[i] - '0';
++i;
}
++ct;
}
and
for(int i = 0; i < l; ++i)
if(s[i] == ' ')
++ct;
else
a[ct] = a[ct] * 10 + s[i] - '0';
(这是实现将单程巴士线路上的站点拆出来的代码)
第二个是我偷懒想少写而打的代码,思路是遇到空格再转到下一个站点
第一个则是一篇题解中的代码(有修改)
两者都能过本题样例及第一个点(本地运行)
但交上去确实100分(1)和40分(2,其中几乎所有点输出NO)
不太理解,还请大佬教导,谢谢。