记录编号 |
33578 |
评测结果 |
AAAAAAAAAA |
题目名称 |
[金陵中学2007] 吉祥数 |
最终得分 |
100 |
用户昵称 |
song |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.000 s |
提交时间 |
2011-11-11 13:36:28 |
内存使用 |
0.27 MiB |
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int n,ni[210],l=0,ki[210]={0},ln=0;
int cf(int s,int x);
int main()
{
freopen("ghillie.in","r",stdin);
freopen("ghillie.out","w",stdout);
cin>>n;
char ch[3];
for(int i=1;;)
{
cin>>ch;
ni[i]=1;
int li;
li=strlen(ch);
if(li==0)
{
break;
}
else
{
for(int j=0;j<li;j++)
{
if(j!=0)
ni[i]=ni[i]*10+ch[j]-'0';
else
ni[i]=ch[j]-'0';
}
i++;
ln++;
}
if(ni[i-2]==ni[i-1])
{
ln--;
break;
}
}
l=ln;
for(int i=1;i<ln;i++)
{
for(int j=1;j<ln;j++)
{
if(ni[j]>ni[j+1])
{
int t=0;
t=ni[j];
ni[j]=ni[j+1];
ni[j+1]=t;
}
}
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=ln;j++)
{
int k=1,g=1;
if(ki[j]==0)
{
k=cf(i+1,j);
for(int q=1;q<=ln;q++)
{
if(k==ni[q])
{
ki[q]=1;
l--;
}
if(l==0)
{
break;
}
}
}
if(l==0)
{
break;
}
}
if(l==0)
{
break;
}
}
for(int i=1;i<=ln;i++)
{
if(ki[i]==0)
{
cout<<ni[i]<<' ';
}
}
}
int cf(int s,int x)
{
int a,b,c,z;
z=ni[x];
a=z%10;
z=z/10;
b=z%10;
z=z/10;
c=z%10;
int a1=1,b1=1,c1=1;
for(int y=1;y<s;y++)
{
a1=a*a;
b1=b*b;
c1=c*c;
}
z=a1+b1+c1;
return z;
}