1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 信了你的邪之杭电1005

信了你的邪之杭电1005

时间:2019-03-16 11:32:44

相关推荐

信了你的邪之杭电1005

#include<stdio.h>//若用递归函数实现应该怎么操作

int main()

{

int a,b,n,i,d,k;

int s[51]={0,1,1};//定义长度为51,s[0],s[1],s[2]分别为0,1,1的数组

while(scanf("%d%d%d",&a,&b,&n)!=EOF&&a+b+n)

{

for(i=3;i<52;i++)

s[i]=(a*s[i-1]+b*s[i-2])%7;//对7取余共有0到6这7种情况,a和b固定值,相乘再相加最多49种情况

for(i=3;i<52;i++)//最迟从50开始出现循环节

{

if(s[i]==s[1]&&s[i+1]==s[2])

break;

}

//printf("%d\n",n);

//printf("%d\n",i);

if(n<i)//i和1的s值相同

printf("%d\n",s[n]);

else

{

k=n;//用k来替换n,避免因改变原本输入数据而造成不必要的麻烦

d=n/(i-1);//i-1为循环长度

k-=d*(i-1);

printf("%d\n",s[k]);

}

}

}http://acm./showproblem.php?pid=1005

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。