第10题:
class Solution {
public:
int lengthOfLastWord(string s)
{
int count = 0;
for(int i = 0;i<s.length();i++)
{
if(s[i] == ' ')
continue;
else
{
if(i>0 && s[i-1] == ' ')
count = 0;
count++;
}
}
return count;
}
};
第11题:
class Solution {
public:
vector<int> plusOne(vector<int>& digits)
{
int carry = (digits[digits.size()-1]+1)/10;
digits[digits.size()-1] = (digits[digits.size()-1] +1) % 10;
for(int i = digits.size()-2;i>=0;i--)
{
int temp = digits[i];
digits[i] = (digits[i] +carry) % 10;
carry = (temp +carry) / 10;
}
if(carry == 1)
digits.insert(digits.begin(),1);
return digits;
}
};
第12题:
class Solution {
public:
string addBinary(string a, string b)
{
reverse(a.begin(),a.end());
reverse(b.begin(),b.end());
string ans;
int n = max(a.size(),b.size());
int carry = 0;
for(int i = 0;i<n;i++)
{
carry += (a.size()>i) ? (a.at(i) == '1') : 0;
carry += (b.size()>i) ? (b.at(i) == '1') : 0;
ans.push_back ((carry%2) ? '1':'0');
carry /= 2;
}
if(carry == 1)
ans.push_back ('1');
reverse(ans.begin(),ans.end());
return ans;
}
};