七月第四天解题报告
本文实现了超链接跳转,查询题目可直接点击题号跳转LeetCode
目录
2078. 两栋颜色不同且距离最远的房子
561. 数组拆分 I
942. 增减字符串匹配
1323. 6 和 9 组成的最大数字
题目
代码演示
class Solution {
public:
int maxDistance(vector<int>& colors) {
int n = colors.size();
int i, j;
int ret = 0;
for(i = 0; i < n; ++i){
for(j = i+1; j < n; ++j){
if(colors[i] != colors[j])
ret = max(ret, abs(i-j));
}
}
return ret;
}
};
代码演示
class Solution {
public:
int arrayPairSum(vector<int>& nums) {
sort(nums.begin(), nums.end());
int ans = 0;
for(int i = 0; i < nums.size(); i += 2)
ans += nums[i];
return ans;
}
};
代码演示
class Solution {
public:
vector<int> diStringMatch(string s) {
int l = 0, r = s.size();
vector<int>ret;
for(int i = 0; i < s.size(); ++i){
if(s[i] == 'I')
ret.push_back(l++);
else
ret.push_back(r--);
}
ret.push_back(l);
return ret;
}
};
代码演示
class Solution {
public:
int maximum69Number (int num) {
vector<int>stk;
while(num){
stk.push_back(num % 10);
num /= 10;
}
for(int i = stk.size()-1; i >= 0; --i){
if(stk[i] == 6){
stk[i] = 9;
break;
}
}
int sum = 0;
for(int i = stk.size()-1; i >= 0; --i){
sum = sum * 10 + stk[i];
}
return sum;
}
};