题意:求n个斐波那契数列组合都无法得到的最小数字

解法:

1 我们先暴力的求出前面几个数字

2 然后再暴力的求递推

3 接着矩阵快速幂(没写错吧?)

/*#include<bits/stdc++.h>
using namespace std;
long long x[50];
map<long long,int>Mp;
void dfs(int pos,long long sum,int cnt,int n){
if(cnt==n){
Mp[sum]=1;
return;
}
if(cnt>n){
return;
}
for(int i=pos;i<=20;i++){
dfs(i+1,sum+x[i],cnt+1,n);
}
}
int main(){
x[0]=0;
x[1]=1;
for(int i=2;i<=21;i++){
x[i]=x[i-1]+x[i-2];
}
for(int i=0;i<=21;i++){
Mp[x[i]]=1;
}
//dfs(0,0,0,3);
for(int i=2;i<=5;i++){ dfs(0,0,0,i);
for(long long j=0;j<=x[21];j++){
if(Mp[j]==0){
cout<<j<<endl;
break;
}
}
}
return 0;
}*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <iostream>
#include <algorithm>
#define mset(a,i) memset(a,i,sizeof(a))
using namespace std;
typedef long long ll;
const int mod=;
struct Mal{
ll x[][];
};
Mal mul(Mal a,Mal b){
Mal c;
memset(c.x,,sizeof(c.x));
for(int i=;i<;i++){
for(int j=;j<;j++){
for(int k=;k<;k++){
c.x[i][j]+=((a.x[i][k]+mod)*(b.x[k][j]+mod))%mod;
c.x[i][j]%=mod;
}
}
}
return c;
}
Mal Qp(int n){
Mal a,b;
memset(a.x,,sizeof(a.x));
memset(b.x,,sizeof(b.x));
a.x[][]=;
a.x[][]=-;
a.x[][]=;
a.x[][]=;
a.x[][]=;
for(int i=;i<;i++){
b.x[i][i]=;
}
while(n){
if(n&){
b=mul(b,a);
}
a=mul(a,a);
n/=;
}
return b;
}
ll k;
int main(){
while(~scanf("%lld",&k)){
if(k==){
cout<<""<<endl;
continue;
}
if(k==){
cout<<""<<endl;
continue;
}
Mal pos,X;
pos.x[][]=;
pos.x[][]=;
pos.x[][]=;
X=mul(Qp(k-),pos);
ll ans=X.x[][]%mod;
printf("%lld\n",ans);
}
return ;
}
/*
1 2 3 4 5 6 7 8 9 10 11 12
4
12
33
88
232
609
1596
4180
10945
28656
75024
196417
99999999
702476551
9999999
395293026
*/

2017 ACM/ICPC Asia Regional Shenyang Online number number number的更多相关文章

  1. 2017 ACM/ICPC Asia Regional Shenyang Online spfa+最长路

    transaction transaction transaction Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 132768/1 ...

  2. 2017 ACM/ICPC Asia Regional Shenyang Online:number number number hdu 6198【矩阵快速幂】

    Problem Description We define a sequence F: ⋅ F0=0,F1=1;⋅ Fn=Fn−1+Fn−2 (n≥2). Give you an integer k, ...

  3. 2017 ACM/ICPC Asia Regional Shenyang Online E number number number 题解

    分析: 当n=1时ans=4=f(5)-1; n=2,ans=12=f(7)-1; n=3,ans=33=f(9)-1; 于是大胆猜想ans=f(2*k+3)-1. 之后用矩阵快速幂求解f(n)即可, ...

  4. 2017 ACM/ICPC Asia Regional Shenyang Online(部分题解)

    HDU 6197 array array array 题意 输入n和k,表示输入n个整数和可以擦除的次数k,如果至多擦除k次能是的数组中的序列是不上升或者是不下降序列,就是魔力数组,否则不是. 解题思 ...

  5. 2017 ACM/ICPC Asia Regional Shenyang Online cable cable cable

    Problem Description Connecting the display screen and signal sources which produce different color s ...

  6. 2017 ACM/ICPC Asia Regional Shenyang Online

    cable cable cable Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  7. HDU 6205(尺取法)2017 ACM/ICPC Asia Regional Shenyang Online

    题目链接 emmmm...思路是群里群巨聊天讲这题是用尺取法.....emmm然后就没难度了,不过时间上3000多,有点.....盗了个低配本的读入挂发现就降到2800左右, 翻了下,发现神犇Clar ...

  8. HDU 6198(2017 ACM/ICPC Asia Regional Shenyang Online)

    思路:找规律发现这个数是斐波那契第2*k+3项-1,数据较大矩阵快速幂搞定.   快速幂入门第一题QAQ #include <stdio.h> #include <stdlib.h& ...

  9. 2017 ACM/ICPC Asia Regional Shenyang Online array array array

    2017-09-15 21:05:41 writer:pprp 给出一个序列问能否去掉k的数之后使得整个序列不是递增也不是递减的 先求出LIS,然后倒序求出最长递减子序列长度,然后判断去k的数后长度是 ...

随机推荐

  1. 2017-2018-1 20179203《Linux内核原理与分析》第二周作业

    攥写人:李鹏举 学号:20179203 ( 原创作品转载请注明出处) ( 学习课程:<Linux内核分析>MOOC课程http://mooc.study.163.com/course/US ...

  2. bzoj 1833: [ZJOI2010]count 数位dp

    题目: 给定两个正整数a和b,求在[a,b]中的所有整数中,每个数码(digit)各出现了多少次. 题解 设\(f[i][j]\)表示长度为\(i\)的所有合法数字中有多少数码\(j\) 设\(g[i ...

  3. MaCrea Lit Sphere maps

    http://www.zbrushcentral.com/showthread.php?92157-MaCrea-Material-Creation-Tool 这边提供几个可以获取MatCap贴图的网 ...

  4. Hough变换原理

    Hough变换原理 一.简单介绍 Hough变换是图像处理中从图像中识别几何形状的基本方法之一.Hough变换的基本原理在于利用点与线的对偶性,将原始图像空间的给定的曲线通过曲线表达形式变为参数空间的 ...

  5. JavaScript-Tool-富文本:UEditor

    ylbtech-JavaScript-Tool-富文本:UEditor UEditor是由百度WEB前端研发部开发的所见即所得的开源富文本编辑器,具有轻量.可定制.用户体验优秀等特点.开源基于BSD协 ...

  6. Spring MVC配置详解(3)

    一.Spring MVC环境搭建:(Spring 2.5.6 + Hibernate 3.2.0) 1. jar包引入 Spring 2.5.6:spring.jar.spring-webmvc.ja ...

  7. R语言:文本(字符串)处理与正则表达式

    R语言:文本(字符串)处理与正则表达式 (2014-03-27 16:40:44) 转载▼ 标签: 教育 分类: R 处理文本是每一种计算机语言都应该具备的功能,但不是每一种语言都侧重于处理文本.R语 ...

  8. java类什么时候初始化?

    Java虚拟机规范中并没有进行强制玉树什么情况下需要开始类加载过程.但是对于初始化阶段,虚拟机规范则是严格规定了有且仅有5种情况必须立即对类进行“初始化”(而加载,验证,准备自然需要在此之前开始): ...

  9. 1.7 xss之同源策略与跨域访问

    同源策略: 同源策略 在web应用的安全模型中是一个重要概念.在这个策略下,web浏览器允许第一个页面的脚本访问第二个页面里的数据,但是也只有在两个页面有相同的源时.源是由URI,主机名,端口号组合而 ...

  10. linux下apache2的虚拟主机配置

    1,起因 在一星期前吧,大波说既然咱们有了自己的服务器,二级域名了.可以考虑怎样每人一个域名,分别指向我们各自的空间.想法挺好,避免我们个人的东西放在同一主页上.那就做吧 2,第一次尝试 (1)在域名 ...