在C ++中找到给定数字的最小排列
在此问题中,给我们一个大数N。我们的任务是找到给定数的最小排列。
让我们举个例子来了解这个问题,
输入
N = 4529016输出结果
1024569
解决方法
解决此问题的简单方法是将长整数值存储到字符串中。然后,我们将对字符串进行排序,这是我们的结果。但是,如果有任何前导零,我们将在第一个非零值之后移动它们。
该程序说明了我们解决方案的工作原理,
示例
#includeusing namespace std; string smallestNumPer(string s) { int len = s.length(); sort(s.begin(), s.end()); int i = 0; while (s[i] == '0') i++; swap(s[0], s[i]); return s; } int main() { string s = "4529016"; cout<<"这个数字是 "< 输出结果这个数字是 4529016 The smallest permutation of 这个数字是 1024569
热门推荐
6 保研的祝福语简短
10 年轻20岁祝福语简短
11 朋友结婚祝福语信息简短
12 女孩婚礼贺卡祝福语简短
13 30段点歌简短祝福语
14 虎年春节祝福语图文简短
15 写给后妈祝福语大全简短
16 简短回复生日祝福语
17 校长送毕业祝福语简短
18 毕业立体贺卡祝福语简短