找出所有六位数的平方数中未出现与原数中重复数字的所有数
2014-12-26 00:56
253 查看
例如203879*203879=41566646641
这有什么神奇呢?仔细观察,203879是个6位数,并且每个数位上的数字都是不同的并且他平方后的所有数位上都不出现组成它自身的数字
#include "stdio.h"
int main ()
{
int i,j,k,l;
int fac=1,temp,bijiao;
int end,flag;
int count=0;
int compare[6]={0},move[15]={0};
for(i=100000;i<1000000;i++)
{
temp=i;
flag=1;
end=0;
for(j=0;j<6;j++)
{
compare[j]=temp%10;
temp=temp/10;
}
for(j=0;j<11;j++) //判断结果中的j个数是否与原数中的数重复
{
k=j;
while(k>=0)//求出结果中的j个数的大小
{
if((j-k)<6 && k<6)
end=end+compare[j-k]*compare[k];
k--;
}
bijiao=end%10;
for(k=0;k<6;k++)
if(bijiao==compare[k])
{
flag=0;
break;
}
end=end/10;
if(flag==0)
break;
}
for(k=0;k<6;k++)
{
for(l=k+1;l<6;l++)
if(compare[k]==compare[l])
{
flag=0;
break;
}
}
if(flag==1)
{
printf(" %d",i);
count++;
if(count%8==0)
putchar('\n');
}
}
return 0;
}
这有什么神奇呢?仔细观察,203879是个6位数,并且每个数位上的数字都是不同的并且他平方后的所有数位上都不出现组成它自身的数字
#include "stdio.h"
int main ()
{
int i,j,k,l;
int fac=1,temp,bijiao;
int end,flag;
int count=0;
int compare[6]={0},move[15]={0};
for(i=100000;i<1000000;i++)
{
temp=i;
flag=1;
end=0;
for(j=0;j<6;j++)
{
compare[j]=temp%10;
temp=temp/10;
}
for(j=0;j<11;j++) //判断结果中的j个数是否与原数中的数重复
{
k=j;
while(k>=0)//求出结果中的j个数的大小
{
if((j-k)<6 && k<6)
end=end+compare[j-k]*compare[k];
k--;
}
bijiao=end%10;
for(k=0;k<6;k++)
if(bijiao==compare[k])
{
flag=0;
break;
}
end=end/10;
if(flag==0)
break;
}
for(k=0;k<6;k++)
{
for(l=k+1;l<6;l++)
if(compare[k]==compare[l])
{
flag=0;
break;
}
}
if(flag==1)
{
printf(" %d",i);
count++;
if(count%8==0)
putchar('\n');
}
}
return 0;
}
相关文章推荐
- 找出4位数的所有吸血鬼数字
- 程序员面试题目总结--数组(二)【二分查找、找出给定数字出现次数、两个有序整型数组交集、找出数组中唯一的重复元素、判断数组中的数值是否连续相邻】
- 一组数据中只有一个数字出现了一次。其他所有数字都是成对出现的。请找出这个数字。
- 一组数据中只有一个数字出现了一次。其他所有数字都是成对出现的。请找出这个数字。(使用位运算)
- 一组数据中只有一个数字出现了一次。其他所有数字都是成对出现的。请找出这个数字。
- 一个整数列,除了一个数字重复2次,所有其他数字都重复4次。O(n)时间O(1)空间找到那个只出现2次的。
- 一组数据中只有一个数字出现了一次。其他所有数字都是成对出现的。请找出这个数字。(使用位运算)
- 计数排序——有一个数组,里面是从1到1,000,000的整数,其中有一个数字出现了两次,你怎么找出那个重复的数字?
- 找出4位数的所有吸血鬼数字
- java 找出4位数的所有吸血鬼数字
- Java 找出四位数的所有吸血鬼数字 基础代码实例
- JAVA找出4位数的所有吸血鬼数字
- 一个存在重复数字的正整数数列,每个数都不超过32,找出其中所有重复的数字
- 一组数据中只有一个数字出现了一次。其他所有数字都是成对出现的。请找出这个数字。(使用位运算)
- 找出2n个数字重复n次出现的数字
- Java 找出四位数的所有吸血鬼数字 基础代码实例
- 随机给定10个小于10的数字(出现的数字可能重复),从其中取出3个各不相同的数字可组合出多个不同的3位数,请输出这些3位数中最大的那个3位数
- 找出一组数据中多次出现的所有数字(空间要求最低)
- 【C语言】【笔试题】找出一组数据中成单出现的数字,其他所有数字都是成对出现的。(移位)
- 一组数据中只有一个数字出现了一次。 其他所有数字都是成对出现的。请找出这个数字。(使用位运算)