|
Problem Description
Input
Output
Print the word "no" if not.
Sample Input
0 1 2 3 4 5
Sample Output
no no yes no no no 题意: 斐波纳契数 求第n个斐波纳契数是否被3整除. 解题思路: 1. 是否可以被整除. 可以想到: a = a (mod m); 2. 假设: a = b (mod m), c = d (mod m); ===> a*t1 - b = m*q1, c*t2 - d = m*q2; ===> 两式相加: (a+c)*t - (b+d) = m*q; ===> 得: (a+c) = (b+d) (mod m); 3. 可以得出结论: 只要有一个式子满足即可. index: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 7 11 18 29 47 76 123 199 322 521 843 1364 2207 3571 5778 a[index]%3==0: n n y n n n y n n n y n n n y 取出可以整除3的下标: 2 6 10 14 ... 4. 显然: (i-2)%4 == 0 就是可以整除3. 代码: #include <cstdio> int n; int main() |
ACM: 数学规律题 数论题 hdoj 1021
最新推荐文章于 2018-04-14 21:23:00 发布