#P17254. 线性筛 2

    ID: 19746 远端评测题 1500ms 512MiB 尝试: 0 已通过: 0 显示难度提高+/省选− 上传者: 标签>O2优化大步小步算法 BSGS线性筛法

线性筛 2

背景

套取数据直接输出抢最优解是恶劣的违规行为,根据情节轻重,最高可以直接封号。

天黑了。
天又亮了。
太阳照在这片洼地上,
照着一切微小而珍贵的生命。

题目描述

给定积性函数 ff、模数 PP,对于 1≤n≤N1\le n\le N 分别求出 f(n)n mod Pf(n)^n\bmod P。

输入格式

第一行两个正整数 N,PN,P。

之后 π(N)\pi(N) 行,第 ii 行 ⌊log⁡piN⌋\left\lfloor\log_{p_i}N\right\rfloor 个整数,第 jj 个数为 f(pij)f(p_i^j),其中 pip_i 为第 ii 个素数。

输出格式

一行一个非负整数,表示 ⨁n=1N(f(n)n mod P)\displaystyle\bigoplus_{n=1}^N(f(n)^n\bmod P)。

20 1000000000
2 4 8 16
3 9
5
7
11
13
17
19
501702414

提示

对于所有数据,1≤N≤3×1071\le N\le3\times10^7,108≤P≤10910^8\le P\le10^9,0≤f(pk)<P0\le f(p^k)<P,不保证 PP 是素数。

时限已开至 std 的 1.5 倍以上。