兔子的序列
链接:https://ac.nowcoder.com/acm/contest/543/A
来源:牛客网
兔子发现了一个数字序列,于是开始研究这个序列。兔子觉得一个序列应该需要有一个命名,命名应该要与这个序列有关。由于兔子十分讨厌完全平方数,所以兔子开创了一个新的命名方式:这个序列中最大的不是完全平方数的数字就是他的名字。
现在兔子有一个序列,想要知道这个序列的名字是什么。
第一行一个整数 n,表示序列的长度。 第二行有 n 个整数 ai,表示序列中的 n 个数分别是多少。
输出仅一行,表示这个序列的名字,也就是这个序列中最大的非完全平方数。
示例1
复制
2 4 2
复制
2
示例2
复制
8 1 576 2 8 32 64 4 16
复制
32
对于 50%的数据 n = 1 对于 100%的数据 1≤ n ≤ 1000,1 ≤ ai ≤ 1000 数据保证至少有一个非完全平方数
用sqrt()需谨慎。。。。。。。。。。
#include
#include
#include
#include
using namespace std;
int a[1005];
bool cmp(int x,int y)
{
return x>y;
}
int main()
{
int n;
cin >> n;
for(int i=1;i<=n;i++)
scanf("%d",&a[i]);
sort(a+1,a+1+n,cmp);
for(int i=1;i<=n;i++)
{
int flag=0;
int x=a[i];
for(int j=1;jx)
break;
else
{
if(j*j==x)
{
flag=1;
break;
}
}
}
if(!flag)
{
cout<