您的位置:首页 > 产品设计 > UI/UE

Number Sequence(HDU1005)

2015-07-18 15:52 411 查看

此题链接单击这里

=================

以前还不知道有循环节这回事,不过早就用到了。自己进行案例分析找到的循环节是7,然而是错的。。。。。。

高人指点才知道是49,不管数多大n%=49后再 f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7 ,就不会超时。

附代码

#include <iostream>
using namespace std;
int a,b,n;

int funt(int f)
{
if(f==1||f==2)
return 1;
else
return (a*funt(f-1)+b*funt(f-2))%7;
}
int main()
{

while(cin>>a>>b>>n&&a)
{
n=n%49;
if(n==1||n==2)
cout<<1<<endl;
else
cout<<(a*funt(n-1)+b*funt(n-2))%7<<endl;

}

}


有问题联系企鹅791267032

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