题意:

对于给出的递推关系,求前n项和

思路:

数据大,有规律。矩阵快速幂吧。然而为啥这题long long 就TLE。智障题。

构造:

Sn=Sn-1+F(n)= Sn-1 +3F(n-1)+2F(n-2)+7F(n-3)

ans矩阵

9 0 0 0

0  3  0  0

0  0   2   0

0    0   0  7

base 矩阵

1 3 2 7

0 3 2 7

0 1 0 0

0 0 1 0

注意0 1 2 的情况。

#include <iostream>
#include <stdio.h>
#include <cstring>
using namespace std;
struct matrix
{int c[5][5];}matrix_base,matrix_ans,temp;
int n;
int mod=2009;
matrix mult (matrix a,matrix b)
{for(int i=1;i<=4;i++){for(int j=1;j<=4;j++){temp.c[i][j]=0;for(int k=1;k<=4;k++)temp.c[i][j]=(a.c[i][k]*b.c[k][j]+temp.c[i][j])%mod;}}return temp;
}
void quick(matrix a)
{while(n){if(n&1){matrix_ans=mult(a,matrix_ans );}a=mult(a,a);n=n>>1;}int     sum=(matrix_ans.c[1][1]+matrix_ans.c[1][2]+matrix_ans.c[1][3]+matrix_ans.c[1][4])%mod;printf("%d\n",sum);
}
int main()
{int T;scanf("%d",&T);for(int Case=1;Case<=T;Case++){scanf("%d",&n);printf("Case %d: ",Case);if(n<3){if(n==1){printf("4\n");}else if(n==2){printf("9\n");}else if(n==0){printf("1\n");}}else{n=n-2;memset(matrix_ans.c,0,sizeof(matrix_ans.c));matrix_base.c[1][1]=1,matrix_base.c[1][2]=3,matrix_base.c[1][3]=2,matrix_base.c[1][4]=7;matrix_base.c[2][1]=0,matrix_base.c[2][2]=3,matrix_base.c[2][3]=2,matrix_base.c[2][4]=7;matrix_base.c[3][1]=0,matrix_base.c[3][2]=1,matrix_base.c[3][3]=0,matrix_base.c[3][4]=0;matrix_base.c[4][1]=0,matrix_base.c[4][2]=0,matrix_base.c[4][3]=1,matrix_base.c[4][4]=0;matrix_ans.c[1][1]=9,matrix_ans.c[2][2]=5,matrix_ans.c[3][3]=3,matrix_ans.c[4][4]=1;quick(matrix_base);}}return 0;
}

fzu 1683 纪念SlingShot 矩阵相关推荐

  1. FZU 1683 纪念SlingShot

    Problem 1683 纪念SlingShot Accept: 682    Submit: 2368 Time Limit: 1000 mSec    Memory Limit : 32768 K ...

  2. FZU - 1683 纪念SlingShot

    Problem 1683 纪念SlingShot Accept: 719    Submit: 2492 Time Limit: 1000 mSec    Memory Limit : 32768 K ...

  3. FZU 1683 纪念SlingShot (简单的矩阵快速幂)

     纪念SlingShot Description 已知 F(n)=3 * F(n-1)+2 * F(n-2)+7 * F(n-3),n>=3,其中F(0)=1,F(1)=3,F(2)=5,对于给 ...

  4. 【FOJ】Problem 1683 纪念SlingShot

    Problem 1683 纪念SlingShot. 思路 构造矩阵T S(n) = Tn-2[0][0] × S(2) + Tn-2[0][1] × f(2) + Tn-2[0][2] × f(1) ...

  5. 纪念SlingShot 矩阵快速幂 构造矩阵

    纪念SlingShot Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit  ...

  6. FOJ 1683 纪念SlingShot

    来源:http://acm.fzu.edu.cn/problem.php?pid=1683 概述:已知 F(n)=3 * F(n-1)+2 * F(n-2)+7 * F(n-3),n>=3,其中 ...

  7. 纪念SlingShot 矩阵

    第一次独立做矩阵,只WA了一次,好高兴~~ 题意:已知 F(n)=3 * F(n-1)+2 * F(n-2)+7 * F(n-3),n>=3,其中F(0)=1,F(1)=3,F(2)=5,对于给 ...

  8. 纪念SlingShot

    很多时候题目里面没有给你n的范围,所以把所有的情况都列出,没有列全的话也会出现time limit 的错误!!! 及时给了不明确,也要列出来 题意:f(0)=1,f(1)=3,f(2)=5,f(n)= ...

  9. 斯坦福机器学习Coursera课程:第八次作业--推荐系统

    根据已有的1682部电影和943用户及部分用户对电影的评分数据,对新用户作电影推荐或预测未评价的评分. 一. 准备工作 1. 加载ex8_movies.mat数据 Y (1682*943) 用户评份数 ...

最新文章

  1. C++11可变模版参数的妙用+ 认真分析mmap:是什么 为什么 怎么用
  2. TCP 为什么是三次握手,而不是两次或四次?
  3. IBM AIX JFS2文件系统数据恢复技术
  4. 根据两点间的经纬度计算距离
  5. Google Map API 学习六-设置infoWindow的长宽
  6. hdu 5246(贪心)
  7. 史上最简单的SpringCloud教程 | 第七篇: 高可用的分布式配置中心(Spring Cloud Config)
  8. android查看kernel log
  9. html css加载不了_CSS加载会阻塞页面显示?
  10. IP大时代下,网络枪机技术发展现状
  11. 【单调队列】【DP】城市交通(jzoj 1749)
  12. method=post 怎么让查看源代码看不到_网上文档无法复制怎么办?试试这几个方法!...
  13. Bulma - 基于 Flexbox 的现代化的 CSS 框架
  14. 手把手教你开发chrome扩展
  15. 【问题导向】GWR与MGWR——以南京市中心城区住宅小区为例
  16. 弘辽科技:拼多多批发价格会影响活动价格吗?商家要不要改价?
  17. 【数据结构】——逆波兰表达式
  18. 【雅思大作文考官范文】——第八篇:recycling essay(垃圾回收)
  19. 将win7电脑无线网变身WiFi热点,让手机、笔记本共享上网
  20. 一分钟五类果汁喝掉熊猫眼

热门文章

  1. 算法优化之c++多线程优化:思考与总结
  2. 1.所谓计算机热启动是指(),(计算机应基础与应用复习题.doc
  3. oracle oci ubuntu server ssh可以连接但tcp连接失败 20220325
  4. 迪文4.3寸宽视角COF智能屏新品发布
  5. 一文带你了解 ZigBee
  6. 约束(constraint)
  7. 计算机进位计数制实训课教案,进制转换汇报课教案[五篇]
  8. LPC简介(超详细)
  9. 我想跳槽了!怎么办?
  10. 计算机对电影工业的影响的英语作文,2019考研英语作文范文欣赏:电影电视对人们行为的影响...