Problem 4068 --A 数位交换

4068: A 数位交换

"
Time Limit $1$ 秒/Second(s) Memory Limit $512$ 兆字节/Megabyte(s)
提交总数 $10$ 正确数量 $10$
裁判形式 标准裁判/Standard Judge 我的状态 尚未尝试
难度 分类标签 贪心
Luca这次从商店里买回了一盒数字卡片。她用这些卡片拼出了一个正整数n。Luca想知道,如果可以交换相邻的卡片,能否使得n的值变大呢?
定义对正整数n的一次操作是交换n的十进制表示中两个相邻的数位(不能与前导0交换)。例如,1024经过一次操作后有0124,1204,1042三种可能的结果。
对于给定的n,对它进行两次操作后所能得到的最大的数是多少?
输入包含1行1个整数n(100≤n≤109)。
输出1行1个整数表示答案。
1024
2104

按1024→ 1204 → 2104操作。这是所有合法操作序列之中结果最大的。

注意1024→ 0124→ 1024是不合法的,因为在第二次操作时交换了前导0。

推荐代码 查看4068 所有题解 上传题解视频得图灵币

本题记录 用 户(点击查看用户) 运行号(点击购买题解) 时 间
算法最快[$2 $ms] linlin 1101639 2024-05-06 18:19:33
内存最少[$1228 $KB] linlin 1101639 2024-05-06 18:19:33
第一AC AOJ大管家 1091003 2024-04-03 15:23:10
第一挑战 AOJ大管家 1091003 2024-04-03 15:23:10

赛题来源/所属竞赛 安徽省机器人大赛2023年热身赛 N/A

竞赛编号 竞赛名称 竞赛时间 访问比赛