南昌网络赛 H The Nth Item
南昌网络赛The Nth Item 暴力快速幂+unordered_map记忆化
注意:记忆化不能写到快速幂求解函数里,不断调用函数会造成很大的时间浪费
#include<bits/stdc++.h>
using namespace std;
#define sc(x) scanf("%lld",&x);
#define si signed
#define int long long
#define P pair<int,int>
#define fi first
#define se second
#define read(A) for(int i=0;i<n;i++) scanf("%lld",&A[i]);
#define push_back pb
int A[][]={{,},{,}};
int B[][];
int C[][];
int D[][];
int Q,N;
#define mod 998244353
#define maxn 100000+10
void mut(int A[][],int B[][])
{
C[][]=((A[][]*B[][])%mod+(A[][]*B[][])%mod)%mod;
C[][]=((A[][]*B[][])%mod+(A[][]*B[][])%mod)%mod;
C[][]=((A[][]*B[][])%mod+(A[][]*B[][])%mod)%mod;
C[][]=((A[][]*B[][])%mod+(A[][]*B[][])%mod)%mod;
for(int i=;i<=;i++){
for(int j=;j<=;j++){
A[i][j]=C[i][j];
}
}
}
unordered_map<int,int> mp;
int qp(int n)
{
if(n==)return ;
if(n==)return ;
n-=;
int Ans[][]={{,},{,}};
for(int i=;i<;i++){
for(int j=;j<;j++){
B[i][j]=A[i][j];
}
}
while(n){
if(n&){
mut(Ans,B);
}
mut(B,B);
n>>=;
}
return Ans[][];
} si main()
{
scanf("%lld%lld",&Q,&N);
int ans=;
while(Q--){
int a;
if(mp[N%]){
a=mp[N%];
}
else{
mp[N%]=a=qp(N%);
}
ans^=a;
N=((N^(a*a))); }
cout<<ans<<'\n';
}
南昌网络赛 H The Nth Item的更多相关文章
- 2019南昌网络赛H The Nth Item(打表找询问循环节 or 分段打表)
https://nanti.jisuanke.com/t/41355 思路 从fib循环节入手,\(O(1e7log(1e9))\),tle 因为只需要输出所有询问亦或后的结果,所以考虑答案的循环节, ...
- 2019南昌网络赛H The Nth Item(二阶线性数列递推 + 广义斐波那契循环节 + 分段打表)题解
题意: 传送门 已知\(F(n)=3F(n-1)+2F(n-2) \mod 998244353,F(0)=0,F(1)=1\),给出初始的\(n_1\)和询问次数\(q\),设每一次的答案\(a_i= ...
- 2019 南昌ICPC网络赛H The Nth Item
The Nth Iteam 题意:F(0)=1,F(1)=1,F(n)=3*F(n-1)+2*F(n-2) (n>=2) ,F(n) mod 998244353.给出Q跟N1,Ni=Ni-1^( ...
- 2019-ACM-ICPC-南昌区网络赛-H. The Nth Item-特征根法求通项公式+二次剩余+欧拉降幂
2019-ACM-ICPC-南昌区网络赛-H. The Nth Item-特征根法求通项公式+二次剩余+欧拉降幂 [Problem Description] 已知\(f(n)=3\cdot f(n ...
- 2019 ICPC 南昌网络赛
2019 ICPC 南昌网络赛 比赛时间:2019.9.8 比赛链接:The 2019 Asia Nanchang First Round Online Programming Contest 总结 ...
- 2019南昌网络赛I:Yukino With Subinterval(CDQ) (树状数组套主席树)
题意:询问区间有多少个连续的段,而且这段的颜色在[L,R]才算贡献,每段贡献是1. 有单点修改和区间查询. 思路:46min交了第一发树套树,T了. 稍加优化多交几次就过了. 不难想到,除了L这个点, ...
- ACM-ICPC 2019南昌网络赛F题 Megumi With String
ACM-ICPC 南昌网络赛F题 Megumi With String 题目描述 给一个长度为\(l\)的字符串\(S\),和关于\(x\)的\(k\)次多项式\(G[x]\).当一个字符串\(str ...
- 分治维护dp——19南昌网络赛C/cf750E
南昌网络赛,是cf的原题 第一次做到这种题,所以认真想了下,每次给一个询问[L,R],要求出这个区间里有2017子序列,但是不能有2016子序列需要删掉的最少元素个数 首先如果我们之询问一小段区间[L ...
- dp--2019南昌网络赛B-Match Stick Game
dp--2019南昌网络赛B-Match Stick Game Xiao Ming recently indulges in match stick game and he thinks he is ...
随机推荐
- Spring(四)--bean的属性赋值
bean的属性赋值 1.需要的实体类 2.需要的配置文件 <?xml version="1.0" encoding="UTF-8"?> <be ...
- Linux 查看文件内容(8)
我们知道在图形界面上查看文件内容只需要双击打开就好,那么在终端窗口里怎么查看文件内容呢?显然是需要能有一个命令能把文件内容显示在终端界面上. 查看文件内容主要有两个命令,分别是 cat 和 more, ...
- zabbix 监控redis python3脚本
一:安装redis-python模块 wge thttps://pypi.python.org/packages/source/r/redis/redis-2.9.1.tar.gz tar xf r ...
- java 字符串锁
package com.example.demo.controller; public class StringLock { public void method(String p) { // new ...
- DNS域名配置
1.什么是DNS 2.DNS层次介绍及基础内容 3.DNS的工作原理及过程 域名服务器配置实战: 4.主域名服务器配置 5.辅域名服务器配置 6.缓存域名服务器配置 1.什么是D ...
- 利用ab压力工具对服务器进行压力测试
假如我们需要对http://letv.com进行压力测试,指定请求总数为100,并发用户数为10,我们可以以下面的方式进行测试 $ ab -n 100 -c 10 http://letv.com/Th ...
- AIX 6.1创建逻辑卷并挂载【smitty】
1.创建卷组 #mkvg -y datavg hdisk2 hdisk3 #smitty vg
- web页面请求历程
web页面请求历程 1)准备DHCP,UDP,IP和以太网 客户端要访问www.google.com的网站. 首先客户端要与网络相接,没有IP地址地址就不能做什么事情,所以客户端采取的一个网络相关的动 ...
- Linux系统账户管理指令
sudo passwd -l weblogic 锁定账户 sudo passwd -u weblogic 解锁账户 useradd weblogic -p xxxxx 添加账户指定密码 sudo us ...
- 将临时全局表中的符合字段导入test数据库中
--表1 开户级别表 insert into test.dbo.crm_m_cust_summary(CUST_CERT_N O,ASSETAMT_GRADE_CD)select cust_no,cu ...