同样,不要将无符号数与有符号数进行比较!https://leetcode.com/submissions/detail/74053490/
Leetcode 293有感,
题目链接:https://leetcode.com/problems/flip-game/
错误的做法:
class Solution {
public:
vector<string> generatePossibleNextMoves(string s) {
vector<string> ans;
for(int i=0; i<s.size()-1; ++i){
if(s[i]=='+' && s[i+1]=='+'){
s[i]='-';
s[i+1]='-';
ans.push_back(s);
s[i]='+';
s[i+1]='+';
}
}
return ans;
}
};
正确的做法:
class Solution {
public:
vector<string> generatePossibleNextMoves(string s) {
vector<string> ans;
for(int i=0; i<(int)s.size()-1; ++i){
if(s[i]=='+' && s[i+1]=='+'){
s[i]='-';
s[i+1]='-';
ans.push_back(s);
s[i]='+';
s[i+1]='+';
}
}
return ans;
}
};
原因:
int main(){
string a="";
cout<<a.size()<<endl;
cout<<a.size()-1<<endl;
return 0;
}
// 输出为:
// 0
// 18446744073709551615