描述
兔子发现了一个数字序列,于是开始研究这个序列。兔子觉得一个序列应该需要有一个命名,命名应该要与这个序列有关。由于兔子十分讨厌完全平方数,所以兔子开创了一个新的命名方式:这个序列中最大的不是完全平方数的数字就是他的名字。
现在兔子有一个序列,想要知道这个序列的名字是什么。
输入描述:
第一行一个整数 n,表示序列的长度。
第二行有 n 个整数 a
i
,表示序列中的 n 个数分别是多少。
输出描述:
输出仅一行,表示这个序列的名字,也就是这个序列中最大的非完全平方数。
#include <stdio.h> #include <math.h> long Tuzi(long* seq_max, int seq_size); int main() { int n; scanf("%d",&n); long name = 0; long seq[n]; for(int i = 0;i < n;i++) { scanf("%ld",&seq[i]); } name = Tuzi(seq, n); printf("%ld\n",name); return 0; } long Tuzi(long* seq_del, int seq_size) { long name_store = 0; //遍历数组求最大 for(int j = 0;j < seq_size;j++) { if(name_store <= seq_del[j]) //后者比前者大 { long Double_seq = (long)sqrt((double)seq_del[j]); //平方根取整 if((Double_seq * Double_seq) != seq_del[j]) //完全平方数判断 { name_store = seq_del[j]; //存放兔子序列名称 } } } return name_store; }