20221004
20221004(兄)
题目来源:乔治魄罗蛙
t1 有两个年轻人
题目背景
有人问我,发生甚么事了?
我一看,哦!原来是昨天,有两个年轻人,一个数学考\(150\),一个物理考\(110\),在教室里练题。
我走上前去,啪,就扔出来了一道题目,很快啊!
他们说,我这个题不好做;我说我这个好做。
他们不信!我就叫你给他们说一说,该怎么做。
题目描述
桌子上刚开始有\(n\)堆棋子,第\(i\)堆棋子有 \(a_{i}(a_{i}>0)\)个棋子。
两个年轻人轮流操作。每次操作,可以从当前剩余的所有棋子堆中,选择出棋子数量最少的(如果有多堆棋子满足条件,则在它们中任选一堆)某一堆棋子,然后从中拿走任意数量的棋子。
要求拿走的数量不能为\(0\),不能超过这一堆所剩余的棋子数。
拿走桌子上最后一颗棋子的人获胜。
请问,在当前局面下,两个年轻人都采用最优策略,先手的人是否能够取胜?
输入格式
第一行,一个正整数\(T\),表示测试组数。
每组数据,第一行,一个整数\(n\)。
接下来一行,\(n\)个整数,\(a_{i}\)表示第\(i\)堆的棋子数。
输出格式
输出\(T\)行。
对每组数据,如果先手存在必胜策略,则输出 Yes
否则输出 No
样例 #1
样例输入 #1
2
2
1 1
1
3
样例输出 #1
No
Yes
提示
【样例1解释】
第一局,先手拿走第一堆的棋子,只能拿一颗。后手拿走第二堆的棋子,后手获得胜利。
第二句,先手拿走第一堆的全部棋子,先手获得胜利。
【数据范围】:
对30%的数据满足,\(n\le18,0<a_{i}\le10\)
对60%的数据满足,\(n\le2000,0<a_{i}\le10^{18}\)
对100%的数据满足,\(0<T\le10,n\le10^{4},0<a_{i}\le10^{18}\)
时间限制 1.00s
内存限制 256.00MB
t2 搬砖
题目背景
因为题目简单,所以\(NSH\)不好好学习,最后到了工地搬砖。
题目描述
\(NSH\)来到工地,俯视来看,工地是一个二维平面,现在四周散落了\(n\)块砖。第\(i\)个砖在坐标\((x_{i},y_{i})\)上。
现在需要把\(n\)块砖全部搬运到目的地\((x_{0},y_{0})\) 处。
决定开始搬砖,但是他同时最多只能携带两块砖,而且一旦他拿起一块砖,就必须要把砖放到目的地处,不允许放在中途的某个地方。
搬砖的时候,对于每一次行动,从\((x_{a},y_{a})\)按照直线走到\((x_{b},y_{b})\)要花费\((x_{a}-x_{b})^{2}+(y_{a}-y_{b})^{2}\)的时间。 \(NSH\)拿起砖和放下砖不消耗时间。
注意,每次行动\(NSH\)只能走一条直线,且每次行动的终止点只能是当前某块砖的所在地或者目的地。
初始时刻,\(NSH\)在\((x_{0},y_{0})\)处。
希望你找到一个搬砖顺序,使得\(NSH\)把所有砖搬到目的地花费的时间最少。
输入格式
第一行,两个整数\(x_{0},y_{0}\)。
接下来一行,一个整数\(n\),表示砖的数量。
接下来\(n\)行,每行两个整数\(x_{i},y_{i}\)。
输出格式
第一行,一个整数,表示把所有砖搬到目的地花费的最少时间。
第二行,\(n\)个整数,表示最优方案下,拾起每块砖的前后顺序。如果有多个答案,输出字典序最小的
解。
样例 #1
样例输入 #1
0 0
2
1 1
-1 1
样例输出 #1
8
1 2
样例 #2
样例输入 #2
1 1
3
4 3
3 4
0 0
样例输出 #2
32
1 2 3
提示
【数据范围】:
对20%的数据满足,\(n\le5\)
对50%的数据满足,\(n\le10\)
对100%的数据满足, \(n\le20,|x_{i}|,|y_{i}|\le100\),
保证给出的坐标互不相同。
时间限制 1.00s
内存限制 256.00MB
t3 闪电链
题目背景
用好三维立体混元劲儿,
才打出松活弹抖闪电链。
题目描述
有一个长度为\(n\)的序列\(A=\lbrace a_{1},a_{2}...a_{n}\rbrace\)。并且给出了一个整数\(h\)。
闪电链\(B\)是序列 的一个下标序列:
并且闪电链 必须满足以下要求:
(1)\(r_{1}=1,r_{k}=n\),也就是说,\(B\)的首尾必须分别是\(1,n\)。
(2)对于任意的\(2\le i<k,r_{i+1}-r_{i}\)的值满足以下条件之一:\(r_{i+1}-r_{i}=a_{r_{i}}\)或者\(r_{i+1}-r_{i}=r_{i}-r_{i-1}\)。
(3)另外,还需要满足\(r_{2}-r_{1}=a_{r_{i}}\)或者\(r_{2}-r_{1}=h\)。
有多少个不同的闪电链序列 满足以上条件?答案对 998244353 取模。
由于下标序列本身有序,两个下标序列不同,当且仅当他们的含有的数字不同。
输入格式
第一行,正整数\(n,h\)。
接下来一行,\(n\)个正整数\(a_{i}\)。
输出格式
输出闪电链的个数。答案对 998244353 取模。
样例 #1
样例输入 #1
5 1
2 3 2 4 3
样例输出 #1
4
提示
【样例解释】
{1,2,5}
{1,3,5}
{1,2,3,4,5}
{1,2,3,5}
【数据范围】
对于15%的数据,满足\(n\le18\).
对于30%的数据,满足\(n\le10^{3}\).
另有20%的数据,满足\(a_{i}\le300\).
另有20%的数据,满足\(10^{3}\le a_{i}\).
对于100%的数据,满足\(2\le n\le10^{5},1\le h,a_{i}\le n-1\).
时间限制 2.00s
内存限制 512.00MB