#include<stdio.h>
#include<algorithm>
using namespace std; const int AIM=6174; int n; int arr[4]; bool NonIncreasingOrder(int a,int b) { return a>b; } bool NonDecreasingOrder(int a,int b) { return a<b; } int toNum() //得到这个数字 { int sum=0; for(int i=0 ; i<4 ; ++i) { sum=sum*10+arr[i]; } return sum; } void toArr() { for(int i=0 ; i<4 ; ++i) //拆解数字 { arr[i]=n%10; n/=10; } } int main() { scanf("%d",&n); int MIN,MAX; //最小排列数,最大排列数 while(1) { toArr(); //拆解 sort(arr,arr+4,NonIncreasingOrder); //生成最大数 MAX=toNum(); sort(arr,arr+4,NonDecreasingOrder); //生成最小数 MIN=toNum(); n=MAX-MIN; printf("%04d - %04d = %04d\n",MAX,MIN,n); if(n==0 || n==AIM) //n是4个相同数字(包括0000的情况,不用额外考虑),或者剪到最后了 break; } return 0; }

转载于:https://www.cnblogs.com/Evence/p/4316649.html

PAT:1019. 数字黑洞 (20) AC(同甲级1069)相关推荐

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

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

  2. 1019 数字黑洞 (20)

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

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

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

  4. PAT 乙级 1019. 数字黑洞 (20) Java版

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

  5. 1019. 数字黑洞 (20)-PAT乙级真题

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

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

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

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

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

  8. 1019. 数字黑洞 (20)

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

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

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

最新文章

  1. x86_64 ubuntu18.04.4 python3.6.9 安装 cuda8.0 和 cudnn5.1
  2. html使两个按钮重叠,div按钮重叠HTML
  3. php redis 读写分离类,yii实现redis读写分离
  4. Python os.system(command),这样执行的command命令,和主程序是异步的吗?
  5. 网上找的,C# 小票打印机 直接打印,备用
  6. 押错宝!一次性将百万行代码从 Flow 迁移至 TypeScript
  7. UniqueIdentifier 数据类型
  8. ProGuard在windows上一定要加dontusemixedcaseclassnames
  9. 决定论的科学家认为,自我是大脑的随附现象,自由意志是一种幻觉
  10. 1.Kettle下载与安装
  11. java面向对象程序设计课后习题答案_JAVA面向对象程序设计课后习题参考答案
  12. 【渗透测试】kali使用教程(一):常用命令和基本工具使用
  13. Linux应用层例程7 CAN 应用编程基础
  14. 量化套利策略|套利策略的原理
  15. Android 简单直接--无需jar包zing实现生成、扫描二维码
  16. 微信、QQ、支付宝运动步数自定义小工具
  17. 缓解核心交换机网线过多的设计思路
  18. FPGA--(基于Quartus的FPAG程序下载与固化教程)VGA显示实验之上板测试
  19. Linux没有桌面怎么装微信,linux安装微信
  20. Web24——Ajax

热门文章

  1. Linux shutdown指令
  2. java 静态内存图
  3. 多项式输出-Java
  4. Java集合入门总结
  5. mysql cross apply_SQL Server CROSS APPLY和OUTER APPLY的应用详解
  6. 下列哪个不是it行业技术岗位_28岁毕业进入IT互联网行业从事技术研发岗位是否还来得及...
  7. percona+mysql插件_使用percona mysql插件来监控mysql5.7
  8. C++ : STL常用算法: inner_product , sort ,itoa
  9. 启明云端分享| sigmstar SSD201/SSD202D/SSD210/SSD212开机动画启动到底能做到多少
  10. 小明分享|8ms平台下工程源码分析