emmm还挺妙

不过我没想到qwq

考场上瞎写的还mle了心碎

把b分两..预处理下 O1询问qwq

#include<cstdio>
#include<iostream>
#include<cstring>
#include<algorithm>
#define rint register int
#define max(a,b) (a>b?a:b)
#define min(a,b) (a<b?a:b)
template <class T>inline void read(T &X)
{
X=;int W=;char ch=;
while(!isdigit(ch))W|=ch=='-',ch=getchar();
while(isdigit(ch))X=(X<<)+(X<<)+(ch^),ch=getchar();
X=W?-X:X;return;
} int a,p,q,k,m,c;
long long b,l,powa[],poww[],ans=; void B()
{
powa[]=;poww[]=;
for(rint i=;i<=;++i)
powa[i]=(powa[i-]*a)%p;
poww[]=powa[];
for(rint i=;i<=l/;++i)
poww[i]=(poww[i-]*poww[])%p;
}
int main()
{
// freopen("pow.in","r",stdin);
// freopen("pow.out","w",stdout);
read(a),read(p),read(q),read(k);
read(b),read(l),read(m),read(c);
if(q==)return ;
q=(q/k)*k;
B();
for(rint i=;i<=q;++i)
{
b=((m%l)*(b%l)%l+(c%l))%l;
ans^=(powa[b%]*poww[b/])%p;
if(i%k==)printf("%lld\n",ans);
}
return ;
}

<JZOJ5941>乘的更多相关文章

随机推荐

  1. h5-立方体

    1.制作一个立方体:首先要有6个面 <div class="box"> <div class="front">front</div ...

  2. Fib数列问题(项数很大)

    用fib(n)表示斐波那契数列的第n项,现在要求你求fib(n) mod m.fib(1)= 1, fib(2)= 1. 输入格式 输入2个整数n(1≤n≤1018), m(2≤m≤10000000) ...

  3. LeetCode——739. 每日温度

    根据每日 气温 列表,请重新生成一个列表,对应位置的输入是你需要再等待多久温度才会升高超过该日的天数.如果之后都不会升高,请在该位置用 0 来代替. 例如,给定一个列表 temperatures = ...

  4. 17.3.12---sys模块

    1---sys是system的缩写,用来获取操作系统和编译器的一些配置,设置和操作,如判断文件和文件夹是否存在,创建文件夹,获取系统版本之类的操作 import sys  #导入sys模块 2--一些 ...

  5. 吴裕雄--天生自然TensorFlow2教程:Tensor数据类型

    list: [1,1.2,'hello'] ,存储图片占用内存非常大 np.array,存成一个静态数组,但是numpy在深度学习之前就出现了,所以不适合深度学习 tf.Tensor,为了弥补nump ...

  6. 吴裕雄--天生自然 PYTHON3开发学习:输入和输出

    str = input("请输入:"); print ("你输入的内容是: ", str) # 打开一个文件 f = open("/tmp/foo.t ...

  7. 让debian8.8不休眠,debian设置不休眠模式,因为我的本本休眠了时间不准确了,得重新同步

    第一步:sudo vi /etc/systemd/logind.conf /*最好备份下再修改*/ 把下面的参数改为ignoreHandleLidSwitch=ignore 第二步: sudo ser ...

  8. collection-time-os-sys-json模块

    一.collections模块 美 [kə'lekʃənz] ,收集,收藏 在内置数据(dict  list  set  tuple)的基础上,collections模块海提供了几个常用的数据类型:c ...

  9. 利用GIt命令上传项目到GitHub指定仓库

    1.建立GIt可管理的仓库 cd到本地项目根目录下,执行 git init 命令: git init 2.将项目的所有文件添加到仓库中(注意add后面有一个“ . ”) git add . 3.将上一 ...

  10. Opencv笔记(十三)——图像的梯度

    目标 认识图像梯度.边界 学习函数cv2.Sobel(),cv2.Schar(),cv2.Laplacian() 原理 图像梯度可以把图像看成二维离散函数,图像梯度其实就是这个二维离散函数的求导.Op ...