1 条题解
-
0
题目:重组三位数为最大值
思路分析
-
任务拆解:
- 输入一个三位整数
- 分离出百位、十位、个位数字
- 将三个数字按从大到小排序
- 重新组合成新的三位数
-
关键点分析:
- 使用取模和除法运算分离各位数字
- 使用冒泡排序思想将三个数字排序
- 按从大到小顺序重新组合
-
步骤规划:
- 输入三位数n
- 计算百位、十位、个位数字
- 通过三次比较交换确保b≥s≥g
- 按b,s,g顺序组合新数
-
代码对应:
int n,b,s,g,t;- 定义原数和各位数字变量cin>>n;- 输入三位数b = n / 100;- 计算百位数字s = n / 10 % 10;- 计算十位数字g = n % 10;- 计算个位数字- 三个if-swap语句 - 将三个数字从大到小排序
cout<<b*100+s*10+g;- 组合成最大三位数
-
- 1
信息
- ID
- 43
- 时间
- 1000ms
- 内存
- 16MiB
- 难度
- 5
- 标签
- (无)
- 递交数
- 698
- 已通过
- 293
- 上传者