在C ++中找到最接近且较小的整齐数
假设我们有一个数字n,我们必须找到最接近且较小的整齐数字n。因此,如果所有数字均以非降序排列,则该数字称为整洁数字。因此,如果数字是45000,则最近的较小的整洁数字将是44999。
为了解决这个问题,我们将从末端开始遍历数字,当违反整洁属性时,我们将数字减1,并将所有后续数字设为9。
示例
#include<iostream>
using namespace std;
string tidyNum(string number) {
for (int i = number.length()-2; i >= 0; i--) {
if (number[i] > number[i+1]) {
number[i]--;
for (int j=i+1; j<number.length(); j++)
number[j] = '9';
}
}
return number;
}
int main() {
string str = "45000";
string num = tidyNum(str);
cout << "The tidy number is: " << num;
}输出结果
The tidy number is: 44999
热门推荐
7 短祝福语简短暖心
10 生日祝福语简短独特的
11 简短的祝福语12字
12 新年祝福语短句简短搞笑
13 老公开业祝福语简短
14 老师祝福语简短100字
15 生日宝宝祝福语简短独特
16 年末祝福语简短的文案
17 Q穷人结婚祝福语简短
18 对儿子祝福语简短精辟