比赛 |
20111111 |
评测结果 |
AAAAAAAAAA |
题目名称 |
吉祥数 |
最终得分 |
100 |
用户昵称 |
血之侍卫 |
运行时间 |
0.000 s |
代码语言 |
C++ |
内存使用 |
0.00 MiB |
提交时间 |
2011-11-11 11:05:06 |
显示代码纯文本
- #include<cstdio>
- #include<cstring>
- #include<cmath>
- #include<cstdlib>
- using namespace std;
- int c(int x,int v)
- {
- int ans=0;
- for(int i=0;i<3;i++)
- {
- ans+=pow(double(x%10),double(v));
- x=x/10;
- }
- return ans;
- }
- int cmp ( const void *a , const void *b )
- {
- return *(int *)a - *(int *)b;
- }
-
- int main()
- {
- freopen("ghillie.in","r",stdin);
- freopen("ghillie.out","w",stdout);
- int n;
- int d[300];
- scanf("%d",&n);
- int a[300];
- int total=0;
- while(scanf("%d",&a[total])!=-1)
- total++;
- for(int i=0;i<total;i++)
- d[i]=a[i];
- for(int i=2;i<=n+1;i++)
- {
- for(int j=0;j<total;j++)
- {
- if(d[j]!=-1)
- {
- d[j]=c(d[j],i);
- }
- }
- for(int j=0;j<total;j++)
- {
- for(int k=0;k<total;k++)
- {
- if(d[j]==a[k])
- {
- d[j]=-1;
- a[k]=-1;
- break;
- }
- }
- }
- }
- qsort(a,total,sizeof(int),cmp);
- for(int i=0;i<total;i++)
- {
- if(a[i]!=-1)
- printf("%d ",a[i]);
- }
- return 0;
- }