【模拟】HDU 5752 Sqrt Bo

题目链接:

  http://acm.hdu.edu.cn/showproblem.php?pid=5752

题目大意

  定义f(n)=⌊√n⌋,fy(n)=f(fy-1(n)),求y使得fy(n)=1。如果y>5输出TAT。(n<10100)

题目思路:

  【模拟】

  5层迭代是232,所以特判一下层数是5的,其余开根号做。注意数据有0。

  队友写的。

 #include<stdio.h>
#include<string.h>
#include<math.h>
int main()
{
char st[];
int temp;
int ans;
while(scanf("%s",st)!=EOF)
{
if (st[]=='' || strlen(st)> || strlen(st)== && strcmp(st,"")>)
printf("TAT\n");
else
if (strlen(st)== && strcmp(st,"")>)
printf("5\n");
else
{
ans=;
sscanf(st,"%d",&temp);
while(temp!=)
{
temp=(int)(sqrt(double(temp)));
ans++;
}
if (ans==) ans=;
printf("%d\n",ans);
}
}
return ;
}
上一篇:hdu 5752 Sqrt Bo 水题


下一篇:URLDecoder解析url编码