Uva11582】的更多相关文章

https://vjudge.net/problem/UVA-11582 首先明确,斐波那契数列在模c的前提下是有循环节的.而f[i] = f[i-1]+f[i-2](i>=2)所以只要有两个连续的值和开头的一样,后面就开始循环,两两组合共有c*c种. 找到循环节之后 #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<cstdlib…
UVA-11582 题意: 求f[a^b]%n ,其中f是斐波那契数列,1<=n<=1000,0<=a,b<=2^64; 代码: //这题重点是要发现 f[i]%n会出现循环,然后找出他的循环节m取 a^b%m 即可 #include<iostream> #include<cstdio> #include<cstring> using namespace std; typedef unsigned long long ull; ull f[];…
这是个开心的题目,因为既可以自己翻译,代码又好写ヾ(๑╹◡╹)ノ" The i’th Fibonacci number f(i) is recursively defined in the following way: • f(0) = 0 and f(1) = 1 • f(i + 2) = f(i + 1) + f(i) for every i ≥ 0 Your task is to compute some values of this sequence. Input Input begins…
#include<cstdio> #include<iostream> #include<cstring> #include<algorithm> using namespace std; ; //如果是1005就会RE,当不确定时,最好取大点. int A[maxn]; #define LL unsigned long long // 注意不能用long long, 因为long long // 最大值只能取到2 ^63 - 1 LL a, b; int…
最近各种破事忙死了 终于开始做题了 紫薯第10章第一题,come on 设g(i)=f(i) mod n,当二元组(g(i).g(i+1))出现重复时,整个序列就开始重复(这一话怎么也不懂,请大神解释) 余数最多n种,所以最多n^2项就会出现重复.设周期为m,只需计算出g(0)-g(n^2)项,然后计算g(a^b)等于其中的哪一项即可 但是,n<=1000,那么n方的规模会达到10^6,显然f(n^2)有些庞大 我们可以利用(a+b)mod n=((a mod n)+(b mod n))mod…
题意:你的任务是计算f(a^b)除以n的余数.其中f(0)=f(1)=1,且对于所有非负整数i,f(i+2)=f(i+1)+f(i). 思路: 由于是模运算,因此整个序列肯定会出现重复序列,所以先找出周期,在利用快速幂求出a^b, #include <iostream> #include <cstring> #include <cstdio> #include <algorithm> #include <cmath> #include <m…
题目链接:https://cn.vjudge.net/problem/UVA-11582 /* 问题 输入a,b,n(0<a,b<2^64(a and bwill not both be zero) and 1<n<1000) 计算并输出f(a^b)%n的结果 其中f(i)是斐波那契数列 解题思路 所有的结果都是f(i)对n取模,不妨设F(i)=f(i)%n.不难发现当F(i),F(i+1)出现重复的时候,整个序列就开始出现重复. 所以设周期为mod,计算出一个循环周期F(0)~f…
https://vjudge.net/problem/UVA-11582 题意: 输入两个非负整数a.b和正整数n,你的任务是计算f(a^b)除以n的余数.f[0]=0,f[1]=1,f[i+2]=f[i+1]+f[i]. 思路: 因为余数最多n种,所以最多n^2项就会出现重复.计算出周期,之后幂取模算出周期内的第几个数. #include <iostream> #include <cstring> #include <algorithm> #include <v…
/** 题目:Colossal Fibonacci Numbers! UVA 11582 链接:https://vjudge.net/problem/UVA-11582 题意:f[0] = 1, f[1] = 1; 给定一个n,求f[a^b]%n的结果.a,b达到2^64 - 1大. 思路:a,b很大,用无符号长整型;我还是太菜了,自己没想出来.这道题很显然是找循环节的题.但我不知怎么找. lrj P316 思路就是,由于fibonacci数是由前两个数相加得来,又%n;所以所有fibonacc…
思路是按紫书上说的来. 参考了:https://blog.csdn.net/qwsin/article/details/51834161  的代码: #include <cstdio> #include <iostream> #include <cmath> using namespace std; typedef unsigned long long ll; +; ll a, b; int n,M; int f[MAXN*MAXN]; int pow_mod(ll p…