您的位置:首页 > 其它

sdut2763 好玩的五次方(大数相乘)

2014-02-11 16:20 323 查看

好玩的五次方


Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^

题目描述

 给你一些数,让你找出一个最小未在这些数中出现的正整数。并且求出这个数的五次方。

输入

 第一行输入一个n,代表有n个数。(n<1000000)
第二行输入n个数,每个数小于10000000000。

输出

 输出结果
 

示例输入

3
1 7 2


示例输出

243


 

#include<stdio.h>
#include<algorithm>
using namespace std;
long long s[1000004];
int t[100];
int main()
{
int i,n,j;
long long min,js,xx,mid;
while(scanf("%d",&n)!=EOF)
{
for(i=0; i<n; i++)
{
scanf("%lld",&s[i]);
}
sort(s,s+n);
if(s[0]!=1)
{
min=1;
}
else
{
for(i=1; i<n; i++)
{
if(s[i]-s[i-1]>1)
{
min=s[i-1]+1;
break;
}
}
if(i==n)
{
min=n+1;
}
}
js=min;
i=0;
while(min)
{
t[i++]=min%10;
min/=10;
}
for(i=1; i<5; i++)
{
mid=0;
for(j=0; j<54; j++)
{
xx=t[j]*js+mid;
t[j]=xx%10;
mid=xx/10;
}
}
for(i=54; i>0; i--)
{
if(t[i])break;
}
for(i; i>=0; i--)
{
printf("%d",t[i]);
}
printf("\n");
}
return 0;
}


 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: