PAT A1069 The Black Hole of Numbers (20分)
程序员文章站
2022-03-24 17:44:14
...
前言
正文
参考题解
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
/*
题意:数字黑洞,要求给定一个四位数的整数N,输出该整数到达数字黑洞6174的
每一步计算过程,若该四位数的整数每一位都相同,则直接输出N-N=0000 ,这里可以
想到若res为0,那么反推n的每一位都是相同的数
思路:主要就是考察整型数与数组之间转换
*/
int n,num[5];
bool cmp(int a,int b){
return a>b;
}
//基本模板
void intToArr(int n){
int i=0;
do{//注意是逆序存储的
num[i++]=n%10;
n/=10;
}while(n!=0);
}
int arrToInt(){
int res=0;
for(int i=0;i<4;i++){
res=res*10+num[i];
}
return res;
}
int main(){
cin>>n;
int a,b;
while(n){
intToArr(n);
sort(num,num+4);
a=arrToInt();
sort(num,num+4,cmp);
b=arrToInt();
n=b-a;
printf("%04d - %04d = %04d\n",b,a,n);
if(n==6174)break;
}
return 0;
}
上一篇: LintCode 31. 数组划分 JavaScript算法
下一篇: Lintcode 链表划分
推荐阅读
-
1069 The Black Hole of Numbers (20分)
-
1069 The Black Hole of Numbers (20 分)(模拟)
-
【PAT】A1069 The Black Hole of Numbers (20分)
-
PAT(A)1069 The Black Hole of Numbers (20分)
-
pat-1069 The Black Hole of Numbers (20分)
-
[PAT-A 1069]The Black Hole of Numbers
-
PAT-A-1069 The Black Hole of Numbers 【验证】
-
PAT A1069 The Black Hole of Numbers (20分)