携程第四题,不清楚是不是最简洁
int main() {
string s;
cin>>s;
long ans=0;
int t=0;
for (char c : s) {
if (c=='0') {
t++;
ans+=t;
} else {
t--;
if (t<0) t=0;
ans+=t;
}
}
cout<<ans<<endl;
}
string s;
cin>>s;
long ans=0;
int t=0;
for (char c : s) {
if (c=='0') {
t++;
ans+=t;
} else {
t--;
if (t<0) t=0;
ans+=t;
}
}
cout<<ans<<endl;
}
全部评论
是的 o(n)复杂度
大佬,能不能解释一下啊😂
这是基础C语言,比我司面试题还水。
相关推荐
01-05 09:14
同济大学 Java
不要盒我呀:我要是9✌🏻我就选保研,保研了大四再找实习,实习之后,如果觉得自己不适合互联网工作模式,还能有其他选择,如果实习后决定了走互联网,也能提升学历提高竞争力 点赞 评论 收藏
分享
飞屋一号:你也两段实习撒,两人综合一下,万一真有面试官问起来,你就说你俩都一起实习的 点赞 评论 收藏
分享
