打卡记录
改变一个整数能得到的最大差值(贪心)
链接
得到最大的整数,找到一个高位将它修改为 9。同理,想要得到最小的整数,找到一个高位将它修改为 0。文章来源:https://www.toymoban.com/news/detail-723345.html
class Solution {
public:
int maxDiff(int num) {
auto replace = [&](string& s, char x, char y) -> void {
for (char& ch : s)
if (ch == x) ch = y;
};
string a = to_string(num);
string b(a);
for (char& ch : a)
if (ch != '9') {
replace(a, ch, '9');
break;
}
for (int i = 0; i < b.size(); ++i) {
if (!i) {
if (b[i] != '1') {
replace(b, b[i], '1');
break;
}
}
else {
if (b[i] != '0' && b[i] != b[0]) {
replace(b, b[i], '0');
break;
}
}
}
return stoi(a) - stoi(b);
}
};
有效时间的数目(组合数学)
链接
文章来源地址https://www.toymoban.com/news/detail-723345.html
class Solution {
int count(string t, int period) {
int ans = 0;
for (int i = 0; i < period; i++)
if ((t[0] == '?' || i / 10 == t[0] - '0') &&
(t[1] == '?' || i % 10 == t[1] - '0'))
ans++;
return ans;
}
public:
int countTime(string time) {
return count(time.substr(0, 2), 24) * count(time.substr(3), 60);
}
};
到了这里,关于Day3力扣打卡的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!