1 二分法查找的时候,还是要用while l<=r,这样写可以cover输入只有一个元素的情况
2 这里list和string都有count函数,但就是前后要对应上
3 很多corner case要考虑到,比如[2,2,2],target=2的时候,while nums[mid]==target, 后面还有一句mid -= 1,这里要注意到当mid=0的时候,mid-=1就index超出范围了,所以mid=0时要单独处理一下
第一步run edge case的时候,不能写成if not nums or not target, 这样会把target为0的情况包含进去,其实target是可以为0的