[问题] Leetcode 744

楼主: Kuba4ma (哦吼)   2021-07-09 14:40:02
https://i.imgur.com/gsNoiha.png
https://i.imgur.com/ZRff8qC.png
Leetcode 744. Find Smallest Letter Greater Than Target
一样的code在 leetcode 上执行和在 VScode 执行上结果不同
自己trace过一遍觉得应该没问题
是有 bug 吗? 还是.....?
vector<char> letters = {'c' ,'f', 'j'};
char ans;
char target = 'k';
int left = 0;
int right = letters.size()-1;
while(left<=right){
int m = left+(right-left)/2;
if(letters[m]>target){
ans = letters[m];
right = m-1;
}
else if(letters[m]<=target)
left = m+1;
}
if(ans>target)
cout<<ans<<endl;
else
cout<<letters[0]<<endl;
作者: ckc1ark (伪物)   2021-07-09 14:58:00
ans的值有可能没更新
楼主: Kuba4ma (哦吼)   2021-07-09 15:09:00
谢谢一楼 ans确实没更新 但不知道为什么vscode会输出c改成 char ans = 'a' 就可以过 leetcode了
作者: achicn3 (Sher)   2021-07-09 17:45:00
lower_bound 好用
作者: ucrxzero (RX-0)   2021-07-09 18:34:00
自从帮柠檬羊解两次bug都不理人我就懒得帮人解了
作者: yao (ㄧㄠˊ)   2021-07-10 13:46:00
变量没有默认值就去调用也算是一种coding错误

Links booklink

Contact Us: admin [ a t ] ucptt.com