My Contest: playing with 毛玉
My Contest: playing with 毛玉
problem A:等差之和
Time limit:\(2s\)
Memery limit:\(512MB\)
Backdrop
⑨在寺子屋学习了等差数列的求和公式,于是她得意地向路过的毛玉挑战
但是毛玉答上了所有问题,⑨很不开心,于是她说:
「
我有一个全为0的数列,每次给其中一段加上一个等差数列
你能说出序列中任意一段数的和吗?
」
然而毛玉很快便答了上来。
⑨找来大妖精验证,毛玉的回答居然都是对的!
这是怎么做到的呢?
Description
初始有一个长度为 \(n\) 的全为 \(0\) 的序列 \(A\)
总共有 \(m\) 个操作,操作分为两种
操作 \(1\): 给出 \(l,r,a,b\) 对于所有 \(i \in [l,r]\),令 \(A_i\ +=\ a+b \times (i-l)\)
操作 \(2\):给出 \(l,r\) 求 \(\sum_{i=l}^{r}{A_i}\)(对 \(1000000007\) 取模)
Input
第一行给出两个整数 \(n,m\),分别表示序列长度和操作个数
接下来 \(m\) 行,每行给出一个操作
对于每个操作,先给出 \(opt=1或2\) 表示操作种类;
当 \(opt=1\) 时表示该次操作为操作 \(1\),接下来给出 \(4\) 个整数 \(l,r,a,b\)
当 \(opt=2\) 时表示该次操作为操作 \(2\),接下来给出 \(2\) 个整数 \(l,r\)
Output
对于每个操作 \(2\),输出一行一个整数表示答案(对 \(1000000007\) 取模)
Sample
input1:
3 3
1 1 3 1 1
2 1 2
2 1 3
output1:
3
6
input2:
7 10
1 6 7 1 1
2 7 7
1 3 3 3 1
2 1 6
1 3 3 2 2
2 2 3
1 5 6 2 3
1 5 5 1 2
1 5 6 3 2
2 7 7
output2:
2
4
5
2
更多内容见样例下载
Hint
对于 \(30\%\) 的数据:保证 \(n \leq 5000\)
对于另外 \(10\%\) 的数据:保证每次修改及询问操作的 \(l=1,r=n\) (即每次对整个序列操作)
对于又另外 \(10\%\) 的数据:保证每次修改操作的 \(b=0\)
对于所有数据:保证 \(n,m\leq 10^6\ ,\ a,b \leq 10^9\)
problem B:等差之积
Time limit:\(2s\)
Memery limit:\(512MB\)
Backdrop
假如是等差数列求和的话连毛玉也能做到!
但如果是求积呢?(毛玉放弃思考...)
来证明你比毛玉聪明吧!
Description
给定质数 \(p\),有 \(q\) 次询问,每次给定 \(a\)(初始项),\(b\)(公差),\(n\) ,求 \(\big(\ \prod_{i=0}^{n}{\ (a + i \times b)\ } \ \big) \mod p\)
为方便,保证每次 \(a,b < p\)
Input
第一行一两个整数 \(p\ ,\ q\) 分别表示模数、询问个数(保证 \(p\) 为质数)
接下来 \(q\) 行,每行三个整数 \(a\ ,b\ ,n\)
Output
对每个询问输出一行一个整数,表示该次询问答案
Sample
input1:
13 3
11 3 4
2 2 5
7 11 4
output1:
12
8
12
input2:
19 6
13 12 2
2 10 9
17 1 14
11 5 9
15 6 16
18 9 16
output2:
17
5
0
7
0
2
更多内容见样例下载
Hint
对于 \(15\%\) 的数据,保证 \(n \leq 20\)
对于另外 \(20\%\) 的数据,保证 \(b = 1\)
对于又另外 \(5\%\) 的数据,保证 \(n \geq p\)
对于所有数据,保证 \(p\) 为质数且 \(2 \leq p \leq 2\times 10^7\ ;\ q \leq 5 \times 10^5\ ;\ \ 1 \leq a,b < p\ ;\ n \leq 10^9\)
problem C:读取信息J(dqxxj)
Time limit:\(1s\)
Memery limit:\(512MB\)
Backdrop
毛玉来和你玩游戏啦!<( ̄︶ ̄)>
毛玉有一个整数序列让你猜,不猜对不会放你走哦!(๑•̀ㅂ•́)و✧
毛玉会给先出一些序列的描述,再问一些关于序列的问题,答对就算你赢!
但毛玉十分迷糊,有时的描述会自相矛盾,这时就要由你来提醒啦!⊙▽⊙
Description
有一个长度为 \(n\) 的整数序列 \(A\)(下标从 \(0\) 开始)
数据会先给出 \(m\) 个描述,每个描述会给出序列的互不相同的一些下标 \(p_i\ (i=1,2,...,k)\),以及这些下标对应的序列的数的异或和,即:\({\bigoplus}_{i=1}^{k}{A_{p_i} }\)
接着,数据会给出 \(q\) 个问题,每个问题会给出序列的互不相同的一些下标 \(p_i\ (i=1,2,...,k)\),询问这些下标对应的序列的数的异或和
如果不存在一个序列能符合描述,输出"stupid description"(不含引号)
否则,对于每个询问输出回答。如果所给描述无法唯一确定某个问题答案,则对该次询问回答"not sure"(不含引号)
Input
第一行三个整数 \(n,m,q\)
接下来 \(m\) 行,每行先给出一个整数 \(k\),接着给出 \(k\) 个互不相同的序列下标 \(p_i\ (i=1,2,...,k)\),最后给出一个整数 \(S\) 表示 \({\bigoplus}_{i=1}^{k}{A_{p_i} }\)
接下来 \(q\) 行,每行先给出一个整数 \(k\),接着给出 \(k\) 个互不相同的序列下标 \(p_i\ (i=1,2,...,k)\)
Output
如果不存在一个序列能符合描述,输出一行"stupid description"(不含引号)
否则,对于每个询问输出一行回答。如果所给描述无法唯一确定某个问题答案,则对该次询问回答"not sure"(不含引号)
Sample
input1:
6 4 4
4 0 1 3 4 8
1 3 7
4 0 1 2 3 11
3 1 4 5 4
1 3
3 0 1 2
4 0 1 2 3
3 0 1 4
output1:
7
12
11
15
input2:
8 4 8
2 1 4 8
4 1 2 4 5 12
7 0 1 2 4 5 6 7 7
6 0 1 2 3 5 7 10
5 0 2 5 6 7
3 1 3 6
4 0 3 4 7
5 0 2 5 6 7
2 1 4
3 1 4 7
5 0 3 4 6 7
5 0 2 5 6 7
output2:
15
5
6
15
8
not sure
not sure
15
更多内容见样例下载
Hint
本题数据打包
\(subtask1(10\%):\) 保证 \(n \leq 12 \ ,\ m \leq 12\ ,\ q \leq 10^3\)
\(subtask2(20\%):\) 保证 \(n \leq 12 \ ,\ q \leq 10^3\)
\(subtask3(20\%):\) 保证所有描述集合的值 \([P]=0\)
↑即是说: \(\bigoplus_{i=1}^{k} A_{p_i}=0\)
\(subtask4(10\%):\) 保证 \(A\) 为 \(01\) 串(\([P] \leq 1\)),一定存在序列 \(A\) 满足所有描述,每次问题答案唯一确定
\(subtask5(40\%):\) 无特殊限制
对于所有数据,满足 \(n \leq 160\ ,\ m \leq 10^4\ ,\ q \leq 10^4\ ,\ [P] \leq 10^9\)
保证原序列中数 \(A_i \leq 10^9\)
problem D:不会输的游戏
Time limit:\(1s\)
Memery limit:\(512MB\)
Backdrop
因为未知的原因,毛玉合体了!
毛玉的智商得到了大幅度提升!
也就是说,毛玉和你一样一定能找到最优策略!
于是毛玉要和你玩游戏!
毛玉很自信,所以你是先手!
然而,你拥有「游戏不会输程度的能力」!
具体的,如果你没有必胜策略,你就可以重置这局游戏
Description
数据给出若干棵有根树
你和毛玉轮流选择一条未被任意一方选过的边(你先手)
要求每次选边后,对每棵树存在一条以根为端点的简单路径,使该树中选择过的边能被该路径包含
无边可选者输
如果你必输(先手必输),输出 "Restart"(不含引号)重置这局游戏
否则输出 "Play now"(不含引号)开始游戏
Input
第一行一个整数 \(n\)
接下来一行 \(n\) 个整数表示每个节点的父节点(为 \(0\) 则表示该节点为一棵树的树根)
Output
一行一个字符串 "Restart" 或 "Play now"(不含引号)
Sample
input1:
3
0 1 1
output1:
Play now
input2:
5
0 1 1 0 4
output2:
Restart
更多内容见样例下载
Hint
本题数据打包(P.S.本来是T组数据,为了大家考虑,改成每五个数据点打一个包)
对于 \(30\%\) 的数据,保证 \(n \leq 5000\)
对于另外 \(20\%\) 的数据,保证只有一棵树
对于所有数据,保证 \(n \leq 3\times 10^6\)
本文来自博客园,作者:蒻杨,转载请注明原文链接:https://www.cnblogs.com/weed-yang/