You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
1.2 KiB
59 lines
1.2 KiB
#include <stdio.h>
|
|
#include <iostream>
|
|
using namespace std;
|
|
int small(int n) {
|
|
// 先确保是三位数
|
|
while (n < 100) n *= 10;
|
|
|
|
int digits[3];
|
|
for(int i = 0; i < 3; i++) {
|
|
digits[i] = n % 10;
|
|
n /= 10;
|
|
}
|
|
|
|
// 升序排列
|
|
for(int i = 0; i < 2; i++)
|
|
for(int j = i+1; j < 3; j++)
|
|
if(digits[i] > digits[j])
|
|
swap(digits[i], digits[j]);
|
|
|
|
return digits[0]*100 + digits[1]*10 + digits[2];
|
|
}
|
|
|
|
int big(int n) {
|
|
// 先确保是三位数
|
|
while (n < 100) n *= 10;
|
|
|
|
int digits[3];
|
|
for(int i = 0; i < 3; i++) {
|
|
digits[i] = n % 10;
|
|
n /= 10;
|
|
}
|
|
|
|
// 降序排列
|
|
for(int i = 0; i < 2; i++)
|
|
for(int j = i+1; j < 3; j++)
|
|
if(digits[i] < digits[j])
|
|
swap(digits[i], digits[j]);
|
|
|
|
return digits[0]*100 + digits[1]*10 + digits[2];
|
|
}
|
|
|
|
int main()
|
|
{
|
|
int n;
|
|
int k=0;
|
|
int kk=1;
|
|
cin >> n;
|
|
// 请在此添加代码,输出整数进入黑洞过程
|
|
/********** Begin *********/
|
|
while (k!=495){
|
|
k = big(n)-small(n);
|
|
cout<<kk<<':';
|
|
cout << big(n) <<'-'<<small(n)<<'='<<k<<endl;
|
|
n = k;
|
|
kk ++;
|
|
}
|
|
/********** End **********/
|
|
return 0;
|
|
} |