nyoj1057寻找最大数3
来源:互联网 发布:知豆汽车能开几年 编辑:程序博客网 时间:2024/04/30 01:01
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=1057
或者:http://115.159.40.116/problem_show.php?pid=5608
寻找最大数(三)
- 描述
给出一个整数N,每次可以移动2个相邻数位上的数字,最多移动K次,得到一个新的整数。
求这个新的整数的最大值是多少。
- 输入
- 多组测试数据。
每组测试数据占一行,每行有两个数N和K (1 ≤ N≤ 10^18; 0 ≤ K ≤ 100). - 输出
- 每组测试数据的输出占一行,输出移动后得到的新的整数的最大值。
- 样例输入
1990 1100 09090000078001234 6
- 样例输出
91901009907000008001234
再提供一些测试数据:
26412 20
4321 6
1234 10
1695679945 4
55998613859220091 8
195300690839678 42
9278750186997489 62
1055669685993329 93答案
64221
4321
4321
9651679945
99865513859220091
999887153006036
9999888777654201每次移动两个相邻的数字,让我联想到了冒泡排序,于是便用了冒泡法。
AC代码:#include <stdio.h>#include <string.h>int main() {char s[20];int k;while(~scanf("%s%d",s , &k)) {int len = strlen(s), j, x = 0;while(k > 0 && x < len) {j = (len-1)<(k+x)?(len-1):(k+x);int max = 0, w = x, a;for(a = x; a <= j; a++) {if(max < s[a]) {max = s[a];w = a;}}for(j = w; j-1 >= x && k > 0; j--) {if(s[j] > s[j-1]) {//写完后看别人代码,听说这个叫贪心交换char t = s[j];s[j] = s[j-1];s[j-1] = t;k--;}}x++;}puts(s);}return 0;}
0 0
- nyoj1057寻找最大数3
- nyoj1057 寻找最大数(三)
- nyoj1057 寻找最大数(三)
- nyoj1057 寻找最大数(三)
- NYOJ1057寻找最大数(三)
- NYOJ1057寻找最大数(三)
- 【贪心】 nyoj1057寻找最大数(三)
- NYOJ1057:寻找最大数(三)
- nyoj1057最大数(三)
- 寻找最大数 nyist448
- acm-寻找最大数
- NYOJ 寻找最大数
- 寻找最大数
- nyoj448寻找最大数
- 寻找最大数
- 448 寻找最大数
- nyoj448 寻找最大数
- 寻找最大数
- 问题 A: 第几天(简单模拟)
- 对象模型 ------- Constructor 构造函数
- poj 1408 Fishnet
- 第一章 Dubbo风格的SPI-ExtensionLoader
- 3D游戏引擎系列一
- nyoj1057寻找最大数3
- Visual Studio Code 配置指南
- HDU3739 Anti LIS 最大流Dinic
- 蓝桥杯- 基础练习 闰年判断
- 学会用好 Visual Studio Code
- the output path is not specified for module
- margin层叠情况,及表现
- Julia :PyPlot的plot_date
- 深挖SpringMVC_01_标准MVC/Web MVC/Spring MVC