luogu#P10269. 实力派

    ID: 14228 远端评测题 1000~1500ms 512MiB 尝试: 0 已通过: 0 难度: 6 上传者: 标签>数论素数判断,质数,筛法最大公约数,gcd莫比乌斯反演

实力派

题目背景

题目描述

来自全国各地的 nn 位 OIer 组成了一个名为“实力派”的团队,每个人有一个实力值 aia_i。共有 mm 场比赛向他们发送了参赛邀请,其中第 ii 场比赛要求 kik_i 个人组成一个队伍参加。为了决定他们是否应该参加某场比赛,他们想出了如下两个衡量实力的数据:

  • 定义 xx 阶最低实力表示从这 nn 个人中选出 xx 个人,使得这 xx 个人实力值的 gcd=1\gcd=1 的方案数;

  • 定义 xx 阶最高实力表示从这 nn 个人中选出 xx 个人,所有方案的 xx 个人的 gcd\gcd 之和。

请你对于每场比赛,告诉他们他们在这场比赛中的 kik_i 阶最低实力和最高实力。对了,为了不让别人听懂,你需要将答案对一个秘密模数 pp 取模。

输入格式

第一行三个整数 n,m,pn,m,p,分别表示团队人数,比赛场数及秘密模数;

第二行 nn 个整数,第 ii 个整数表示第 ii 个人的实力值 aia_i

接下来 mm 行,第 ii 行一个整数 kik_i,表示第 ii 场比赛的要求参赛人数。

输出格式

输出共 mm 行,第 ii 行两个整数 mini,maximin_i,max_i,分别表示他们在第 ii 场比赛中的最低实力和最高实力,答案对 pp 取模。

4 4 998244353
8 15 12 6
2
3
4
5
1 19
2 7
1 1
0 0
6 4 19260817
11 45 14 19 19 810
2
1
2
2
12 78
0 918
12 78
12 78
8 3 19491001
3 2 2 3 1 2 1 2
5
3
4
56 56
52 60
69 71

提示

样例 1\mathbf{1} 解释

第一场比赛要求选出 22 人参加,仅有 (8,15)(8,15) 一种方案的 gcd=1\gcd=1,因此最低实力为 11;所有方案的 gcd\gcd 之和为 1919,因此最高实力为 1919

第二场比赛要求选出 33 人参加,有 (8,15,12)(8,15,12)(8,15,6)(8,15,6) 两种 gcd=1\gcd=1 的方案,因此最低实力为 22;所有方案的 gcd\gcd 之和为 77,因此最高实力为 77

数据范围

对于所有数据,1n,m,ki2×1051\leq n,m,k_i\leq 2\times 10^51ai1061\leq a_i\leq 10^6107p10910^7\leq p\leq 10^9pPp\in \mathbb{P}

本题共 3030 个测试点,采用捆绑测试,子任务及数据点分配如下:

子任务编号 数据点编号 特殊性质 分值 时限
00 141\sim 4 n20n\leq 20 1010 1s1s
11 585\sim 8 n,ai300n,a_i\leq 300
22 9129\sim 12 ki2k_i\leq 2 2020 1.5s1.5s
33 131613\sim 16 ai3a_i\leq 3 1010 1s1s
44 172217\sim 22 ai105a_i\leq 10^5 2020
55 233023\sim 30 无特殊性质 3030 1.5s1.5s

提示

P\mathbb{P} 表示全体质数集合,gcd\gcd 表示最大公因数。