| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1681 人关注过本帖
标题:uva 10236 斐波拉契素数问题
取消只看楼主 加入收藏
brian1994
Rank: 2
来 自:广东省中山市一中
等 级:论坛游民
帖 子:63
专家分:47
注 册:2011-5-15
收藏
得分:0 
好惨啊!弄了我这么久...
还好最后AC了
#include<cstdio>
int n;
int tot=0;
int ans[25000];

int main()
{
    long long t0,t1=1,t2=1;
    for (int i=3;tot<22000;i++)
    {
        t0=t1+t2;
        t2=t1;
        t1=t0;
        if (t0>=1e18)
        {
           t0/=10;
           t1/=10;
           t2/=10;
        }
        bool p=true;
        for (int j=2;j*j<=i;j++)
            if (i%j==0)
            {
               p=false;
               break;
            }
        if (p || i==4)
        {
           long long p=t0;
           while (p>=1e9) p/=10;
           ans[++tot]=p;
        }
    }
    while (scanf("%d",&n)==1) printf("%d\n",ans[n]);
    return 0;
}
2011-05-20 16:51
快速回复:uva 10236 斐波拉契素数问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024505 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved