leetcode中国語(一)#7反転整数,#77組合せ
これらの問題は私にとって、学習の任務は重くなくて、何のコードが打っている時手触りを維持していないので、順番に問題を塗っていないで、暇があれば興味のあることを見て1、2つします
#7反転整数
#77組合せ
#7反転整数
class Solution {
public:
int reverse(int x) {
bool tag = x <= 0;
long ans;
int tmp;
x = abs(x);
for (ans = 0; x > 0; x = x / 10)
{
tmp = x % 10;
ans = ans * 10 + tmp;
}
if (ans > INT_MAX)
return 0;
else
{
if (tag)
return (int)(-ans);
else
return ans;
}
}
};
#77組合せ
class Solution {
public:
vector> combine(int n, int k)
{
vector> ans;
if (n == 0 || k == 0)
return ans;
vector arr;
for (int i = 1; i <= n - k + 1; ++i)
helper(ans, i, n, k, arr);
return ans;
}
void helper(vector>& ans, int start, int n, int k, vector arr)
{
arr.push_back(start);
if (k == 1)
{
ans.push_back(arr);
return;
}
k--;
for (int i = start + 1; i <= n - k + 1; ++i)
helper(ans, i, n, k, arr);
}
};