该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include
#include
int Inv(int num)
{
int t =0,s,tmp; if(num == 0) return 0;
if(num < 10000)
{
tmp = num; s =1;
while(num % 10 == 0)
{
s *= 10;
num /= 10;
} while(tmp)
{
t = t*10 + tmp % 10; tmp /=10;
} while(t < 10000)
{
t *= 10;
} t /= s;
} else
{
while(num)
{
t = t*10 +num%10; num /=10;
} }
return t;
}
int main()
{
int a[191][20],m,i,j,k,sign;FILE *fp = fopen("D:\\11.txt","a");
int n,t,Visited[100000]; i=0; for(i=0;i<100000;i++)
Visited[i] = 0;
i =0;
for(n=0;n <=9; n++)
for(t=-9;t <=9; t++)
{
m = abs(9999*n + t*990);
if(Visited[m] == 0)
{ a[i][0] = m; j=1;
while(1)
{
sign =0;
a[i][j] = abs(a[i][j-1] - Inv(a[i][j-1]) );
for(k=0; k
{
if(a[i][j] == a[i][k])
{sign =1;break;}
} if(sign ==1)
{
for(k=0; k<=j;k++)
fprintf(fp,"%d,",a[i][k]);
fprintf(fp,"\n"); break;
} else { Visited[a[i][j]] = 1;j++;}
}
} i++;
}
return 0;
}
//耗时不用1秒。。