A.小沙の好客
题意:
有一家超市,超市里面有 n 件商品,X现在有 Q 个问题,X 让你帮忙挑选最多 k 个价值不大于 x 的商品,问每次最大价值是多少?
数据范围:
ai表示商品的价格
$$1\leq n \leq 10^5,1\leq Q \leq 10^5$$
$$1\leq a_i \leq 10^9$$
$$1 \leq k \leq n,1 \leq x \leq10^9$$
题解:二分,前缀和
对商品价值排序之后,通过前缀和进行计算,最后通过二分,找到 x 所在a的位置。
代码
1 | void JiuCherish(){ |
B.小沙の博弈
题意:
在两人A与B都十分聪明的情况,他们会选择最优的胜利方式,桌上有 n 个石子,他们两个人面前均有排成一行的若干个格子,每个格子都可以置放无限多个石子。
A先走,每次拿任意正整数个石子,放在第一个没有石子的格子里。
当桌上石子数为 0 的时候游戏结束,按照两人各自中石子数目组成序列的字典序判断胜负,字典序小的人获胜。
数据范围:
$$1 \leq n \leq 10^5$$
输出一个字符串。
当A获胜时输出:”Sajin-win!”(不含引号)。
当B获胜时输出:”Yaya-win!”(不含引号)。
如果都没获胜,输出”win-win!”(不含引号)。
题解:博弈
当石子数目为偶数的时候,双方的字典序必然是相同的,当石子数为奇数的时候,先手必输即字典序大。
代码:
1 | void JiuCherish(){ |