zoukankan
html css js c++ java
HDU1588 Gauss Fibonacci 矩阵应用
/* 由f(n)=f(n-1)+f(n-2)构造矩阵 令 Fn(1,2) = |f(n) f(n-1)| A(2 2) = |1 1| |1 0| F1(1 2) = |1 0| Fn = F(n-1) * A = F1 * A ^ (n-1) 代入n = g(i) = k * i + b 得:Fn = F1 * A ^ (k * i + b - 1) 1)b > 1 Fn = F1 * A^(b-1) * (A^k)^i Sum(Fn) = F1 * A^(b-1) * Sum((A^k)^i) 2)b = 1 Fn = F1 * (A^k)^i Sum(Fn) = F1 * Sum((A^k)^i) 3)b = 0 Fn = F1 * A^(k-1) * (A^k)^i------------------n = n - 1 Sum(Fn) = F1 * A^(k-1) * Sum((A^k)^i)--------n = n - 1 其中Sum((A^k)^i)用solve进行二分求和 */ #include "Mat.h" #include <iostream> using namespace std; int main() { Mat A(2, 2), F1(1, 2), e(2, 2), ans(1, 2), temp(2, 2); int b, n, k; while(cin>>k>>b>>n>>mod) { //全1矩阵 A.clear(2);A.s[1][1] = 0; F1.clear(1); e.clear(1); ans.clear(); temp = A; if(b > 1) { temp.Er_work(b-1); F1.Multiply(temp); } else if(b == 0) { n--; temp.Er_work(k-1); F1.Multiply(temp); } A.Er_work(k); A.solve(n-1); A.Add(e); F1.Multiply(A); printf("%I64d\n",F1.s[0][0]); } return 0; }
查看全文
相关阅读:
C# 数据库访问
ArcGIS API For Silverlight使用在线地图的多种方法总结
Google Map Api 谷歌地图接口整理
定义函数up(ch),如字符变量ch是小写字母就转换成大写字母并通过up返回,否则字符ch不改变。要求在短小而完全的程序中显示这个程序是怎样被调用的-简单
编写一个求方程ax^2+bx+c=0的根的程序,用3个函数分别求当b^2-4ac大于零、等于零和小于零时的方程的根。要求从主函数输入a、b、c的值并输出结果-简单
已知一个string的对象str的内容为“we are here!”, 使用多种方法输出字符“h”-简单
使用多种方法编写将两个字符串连接在一起的程序-简单
c++简单函数应用
编写一个完整的程序,它读入15个float值,用指针把它们存放在一个存储快里,然后输出这些值的和以及最小值
编写一个为int型变量分配100个整型量空间的程序-简单
原文地址:https://www.cnblogs.com/windmissing/p/2559894.html
最新文章
java 数据类型
java 2 8 10 16
Base64
JAXB
ElasticSearch学习记录
筹码分布
科创板基础知识
匈牙利命名法、Camel命名法与Pascal命名法
【转】DQL、DML、DDL、DCL的概念与区别
港股通基础知识
热门文章
港股交易基础知识
期权基础知识
科创板
Sql2005常用函数大全
SQL 2005批量插入数据的二种方法
Silverlight访问数据库大全(转)
js 得到 radiobuttonlist和CheckBoxList 选中值
C#中的文件导出大全
.net连接MySQL数据库的方案与实例演示
.NET连接数据库实例
Copyright © 2011-2022 走看看