zoukankan
html css js c++ java
HDU2855 Fibonacci Checkup 矩阵的应用
/* 两个数论公式: f(k) = ( (1+sqrt(5)) / 2 ) ^ k - ( (1-sqrt(5)) / 2) ^ k (1+a)^n = Sum(C(k|n) * (a^k)) 推导过程: Sum(C(k|n) * f(k)) = Sum(C(k|n) * ( (1+sqrt(5)) / 2 ) ^ k - ( (1-sqrt(5)) / 2) ^ k) = Sum(C(k|n) * (1+sqrt(5)) / 2 ) ^ k) - Sum(C(k|n) * (1-sqrt(5)) / 2 ) ^ k) = ( (3+sqrt(5)) / 2 ) ^ k - ( (3-sqrt(5)) / 2) ^ k = ( (1+sqrt(5)) / 2 ) ^ 2k - ( (1-sqrt(5)) / 2) ^ 2k = f(2k) 构造矩阵是浮云 Fn(1,2) = |f(n) f(n-1)| F1(1,2) = |f(1) f(1)| = |1 0| A(2,2) = |1 1| |1 0| */ #include "Mat.h" #include <iostream> using namespace std; int main() { Mat A(2,2),F(1,2); int t, n; scanf("%d", &t); while(t--) { scanf("%d%d", &n, &mod); if(n == 0) { printf("0\n"); continue; } A.clear(2);A.s[1][1] = 0; F.clear(1); A.Er_work(n*2-1); F.Multiply(A); printf("%d\n", F.s[0][0]); } return 0; }
查看全文
相关阅读:
weekly review 200819: Burn the midnight oil
如何进行Android单元测试
Android开发教程
使用SQLite方式存储数据
图像的平移、旋转及缩放
JSON数据解析
Android 多线程下载网络文件
10套华丽的 Windows 8 Metro 风格图标【2000+免费图标】
学习新技术的 10 个建议
BugFree快速使用入门
原文地址:https://www.cnblogs.com/windmissing/p/2559892.html
最新文章
牛腩尾声 63:Gridview 分页的优点和缺点
IOS学习笔记(二)取图片
为UIWebView实现离线浏览
IOS学习笔记(六)inputAccessoryView,inputView
IOS学习笔记 多线程
IOS学习笔记(七)网络连接
IOS学习笔记(三)UIView animation
IOS学习笔记(九)UIImagePicker
IOS学习笔记(四)Core Animation
IOS学习笔记(五)音频视频
热门文章
IOS学习笔记(八)CoreData
闹剧结束,男足解散
weekly review 200822: The Fast and the Furious
孩子,快抓紧妈妈的手(zt)
DO SOMETHING(zt)
成都:地震中那些感人的小事(zt)
monthly report 200805 : Month of Earthquake
weekly review 200821: when I'm gone
weekly review 200820: Earthquake
每一个IT技术人员都应该掌握的30种技能(翻译)
Copyright © 2011-2022 走看看