Le nombre de trous noirs, également connu sous le nombre de pièges, aussi connu comme « problème Kaprekar », est une classe avec un certain nombre de caractéristiques de conversion étranges.
Un d'entre vous ne sont pas tous les mêmes numéros à trois chiffres par un nombre limité d'opérations « réarrangement différentiateur », toujours obtenir 495. 495 Le numéro trois est le trou noir a finalement obtenu. Le soi-disant « réarrangement différentiateur » opération qui est composé du nombre maximum du nombre numérique moins le nombre minimum de réarrangements réarrangé. (6174 à quatre le nombre de trous noirs).
Par exemple, trois chiffres 207:
1er réarrangement différencing obtenu: = 693 720 à -27;
2ème réarrangement différencing obtenu: = 594 963 à -369,
3e réarrangement différencing obtenu: = 495 954 à -459,
plus tard restera 495 le nombre de trous noirs. Si un nombre à trois chiffres 3 tous égaux, après la conversion à 0.
Tout numéro à trois chiffres, le processus de programmation est donnée réarrangement de différenciation.
Format d' entrée:
entrée numéro à trois chiffres dans une ligne donnée.
Format de sortie:
le processus de sortie de format différentiateur de suite de réorganisation de:
Référence: Le nombre maximum de réarrangé numérique - le nombre minimum de la différence réarrangé =
N ° 1 depuis le début, jusqu'à ce que 495 apparaît dans le côté extrême droite.
Exemple d' entrée:
123
Exemple de sortie:
1: 198 321 à -123 =
2: 981 à -189 = 792
3: 972 à -279 = 693
4: 963 à -369 = 594
5: 954 à -459 = 495
#include <stdio.h>
int main()
{
int x,a,b,c,t,i=0;
int max,min;
scanf("%d",&x);
do{
a=x/100;
b=x%100/10;
c=x%10;
if(a<b){
t=a;
a=b;
b=t;
}
if(a<c){
t=a;
a=c;
c=t;
}
if(b<c){
t=b;
b=c;
c=t;
}
max=a*100+b*10+c;
min=c*100+b*10+a;
x=max-min;
i++;
printf("%d: %d - %d = %d\n",i,max,min,x);
}while(x!=495);
return 0;
}