杭电1005 我看到的好的思路

来源:互联网 发布:csgo淘宝买的有市场 编辑:程序博客网 时间:2024/05/18 09:15
这是大概是数论的问题,循环周期应该是7^变量个数,变量是两个,那么循环周期就是7^2=49咯~这是代码#include <iostream>using namespace std;int main(){    int a,b,i;    long n,num[50];    num[1]=num[2]=1;    while(scanf("%d %d %ld",&a,&b,&n),a+b+n)    {     for(i=3;i<=48;i++)     num[i%48]=(a*num[i-1]+b*num[i-2])%7;     printf("%ld\n",num[n%48]);    }    return 0;}

原创粉丝点击