hdu 6198 number number number
来源:互联网 发布:如何更新mac系统 编辑:程序博客网 时间:2024/06/06 08:11
题目:
http://acm.hdu.edu.cn/showproblem.php?pid=6198
题意:
如果一个数字
思路:
可以推出规律,当
#include <bits/stdc++.h>using namespace std;typedef long long ll;const int N = 10 + 10;const ll mod = 998244353;struct matrix{ int row, col; ll mat[N][N]; matrix(int _row=0, int _col=0) { init(_row, _col); } void init(int _row, int _col) { row = _row, col = _col; memset(mat, 0, sizeof mat); } matrix operator* (matrix b) { matrix c(row, b.col); for(int i = 1; i <= row; i++) for(int j = 1; j <= b.col; j++) for(int k = 1; k <= col; k++) c.mat[i][j] = (c.mat[i][j] + mat[i][k] * b.mat[k][j] % mod) % mod; return c; }};matrix mod_pow(matrix a, ll b, ll p){ matrix ans(2, 2); ans.mat[1][1] = ans.mat[2][2] = 1; while(b) { if(b & 1) ans = ans * a; a = a * a; b >>= 1; } return ans;}int main(){ int k; while(~ scanf("%d", &k)) { k = 4 + 2*k - 1; matrix a(2, 2); a.mat[1][1] = 1, a.mat[1][2] = 1; a.mat[2][1] = 1, a.mat[2][2] = 0; a = mod_pow(a, k, mod); printf("%lld\n", a.mat[1][2] - 1); } return 0;}
阅读全文
0 0
- hdu 6198 number number number
- hdu 6198 number number number
- hdu-6198number number number
- hdu 6198 number number number
- number number number HDU
- HDU 6198 number number number 题解
- 6198 number number number
- HDU 6189 number number number
- HDU-6198 number number number(打表找规律、矩阵快速幂)
- HDU 6198 number number number【找规律+矩阵快速幂】
- HDU 6198 number number number(斐波那契)
- Hdu 6198 number number number【矩阵快速幂】
- HDU 6198 number number number(规律+矩阵快速幂)
- HDU 6198number number number(矩阵快速幂)
- 【HDU 6198】number number number 【规律+矩阵快速幂】
- Number
- number
- number
- python spark中parquet文件写到hdfs,同时避免太多的小文件(block小文件合并)
- Android 获取应用当前 targetSdkVersion
- 在Linux下目录和文件的3种权限
- 【1701H1】【穆晨】【171016】连续第六天总结
- java循环队列
- hdu 6198 number number number
- 利用maven按环境打包SpringBoot的不同配置文件
- 非root权限安装python+HTSeq+numpy+easy_install
- BZOJ4771:七彩树 (LCA+Treap+可持久化线段树)
- 简单的Contentprovider和contentResolver
- UC/OS-II(二)自学笔记
- 顺序队列和链队列
- AS移动开发 随手记 string类型转换int类型
- 判断网络工具类