原题链接

题面

思路

就是以字符串的形式读入,通过sort排序来实现升序排和降序排,通过string+ insert 的方式补全占位的 0。

坑点

就是一个数字不足四位时,必须要先在前面用 0 占位,但是翻转时,必须要带上前面补充的 0 一起翻转,比如 10001,翻转后是1000

代码

#include<bits/stdc++.h>
using namespace std;
bool cmp(char a, char b)
{return a > b;
}
int main()
{string a;cin >> a;a.insert(a.begin(), 4 - a.length(), '0');while (1){sort(a.begin(), a.end());int x = stoi(a);sort(a.begin(), a.end(), cmp);int y = stoi(a);printf("%04d - %04d = %04d\n", y, x, y - x); //输出时补全四位a = to_string(y - x);a.insert(a.begin(), 4 - a.length(), '0'); //字符串前面也要加上0,三个参数分别是 插入位置、长度、内容if (a == "6174" || a == "0000") break; //终止条件}return 0;
}

总结

细节啊,我就是因为那个坑点卡了好久直到最后都没找出来,真阴险,这题。

1019 数字黑洞 (20 分)相关推荐

  1. C++学习之路 | PTA乙级—— 1019 数字黑洞 (20分)(精简)

    1019 数字黑洞 (20分) 给定任一个各位数字不完全相同的 4 位正整数,如果我们先把 4 个数字按非递增排序,再按非递减排序,然后用第 1 个数字减第 2 个数字,将得到一个新的数字.一直重复这 ...

  2. 1019 数字黑洞 (20 分)(c语言)

    给定任一个各位数字不完全相同的 4 位正整数,如果我们先把 4 个数字按非递增排序,再按非递减排序,然后用第 1 个数字减第 2 个数字,将得到一个新的数字.一直重复这样做,我们很快会停在有" ...

  3. 15行代码AC——1019 数字黑洞 (20分) 甲级1069. The Black Hole of Numbers (20)(解题报告)

    立志用更少的代码做更高效的表达 PAT甲级最优题解-->传送门 Pat乙级最优化代码+题解+分析汇总-->传送门 给定任一个各位数字不完全相同的 4 位正整数,如果我们先把 4 个数字按非 ...

  4. PTA | 1019 数字黑洞 (20分)

    给定任一个各位数字不完全相同的 4 位正整数,如果我们先把 4 个数字按非递增排序,再按非递减排序,然后用第 1 个数字减第 2 个数字,将得到一个新的数字.一直重复这样做,我们很快会停在有" ...

  5. PAT乙级 1019 数字黑洞 (20 分)

    题目内容 给定任一个各位数字不完全相同的 4 位正整数,如果我们先把 4 个数字按非递增排序,再按非递减排序,然后用第 1 个数字减第 2 个数字,将得到一个新的数字.一直重复这样做,我们很快会停在有 ...

  6. 【PAT乙级】1019 数字黑洞 (20 分)

    https://pintia.cn/problem-sets/994805260223102976/problems/994805302786899968 注意补前导零. 例: 输入 9 应为0009 ...

  7. 1019 数字黑洞 (20分)

    输入样例 1: 6767 输出样例 1: 7766 - 6677 = 1089 9810 - 0189 = 9621 9621 - 1269 = 8352 8532 - 2358 = 6174 输入样 ...

  8. 1019 数字黑洞 (20)

    给定任一个各位数字不完全相同的4位正整数,如果我们先把4个数字按非递增排序,再按非递减排序,然后用第1个数字减第2个数字,将得到一个新的数字.一直重复这样做,我们很快会停在有"数字黑洞&qu ...

  9. 1019. 数字黑洞 (20)

    给定任一个各位数字不完全相同的4位正整数,如果我们先把4个数字按非递增排序,再按非递减排序,然后用第1个数字减第2个数字,将得到一个新的数字.一直重复这样做,我们很快会停在有"数字黑洞&qu ...

最新文章

  1. 解题报告:AcWing 1165. 单词环(01分数规划、hash、经验优化)
  2. 目标检测中的分类和定位冲突问题
  3. k8s使用volume将ConfigMap作为文件或目录直接挂载_从零开始入门 K8s | 如何实现应用配置管理?...
  4. Cpp 对象模型探索 / 静态局部对象只构造一次的原因和执行析构的方法
  5. linux io测试陈旭,陈旭方案论证及器件选择.doc
  6. 使用 Tye 辅助开发 k8s 应用竟如此简单(四)
  7. 将Java 8支持添加到Eclipse Kepler
  8. 总结各类损失函数【修】
  9. 吴恩达深度学习4.1练习_Convolutional Neural Networks_Convolution_model_Application_2
  10. 弱电系统集成(收集)
  11. Clojure的并发(七)pmap、pvalues和pcalls
  12. red hat linux yum,Red Hat Linux安装CentOS的yum源
  13. 黑马程序员---三天快速入门Python机器学习(第一天)
  14. Retina屏而被图处理
  15. python灰色关联度分析_基于灰色关联度重庆万州区边坡稳定影响因素分析
  16. hadoop2.4.1配置时出现域名解析失败的解决方法
  17. 某个IP地址的十六进制表示是C22F1481,试将其转换为点分十进制的形式.这个地址是哪一类IP地址?
  18. ffmpeg命令行太多了_ffmpeg每帧请求的位数过多
  19. linux 'stack'未声明(在此函数内第一次使用,未定义的引用`__stack_chk_fail'
  20. APP加密,ios代码混淆工具,虚拟化技术 适用于移动应用程序的虚拟化加密软件

热门文章

  1. 全球及中国食品级椰子油市场销售策略及需求形势分析报告(2022-2027)
  2. Android.mk的用法和基础 m、mm、mmm编译命令
  3. 最新LAMP×××网站平台PHP5.5.1 + Apache2.4.6 + mysql5.6.12
  4. 【干货】7个面向产品经理的实用工具推荐
  5. 扫码枪利用钩子进行数据录入
  6. 一年偶尔要用一次农行 网上银行,结果告诉我维护,
  7. Pagehelper使用注意点记录
  8. 供应链环境下,制造企业物流运作模式该如何选择
  9. 智慧商贸系统-收支管理新增
  10. 华为交换机配置时区_S5700系统时区不同于UTC时区导致NTP同步失败