这一部分的总结先鸽一会。

# 莓良心 *

莓在执行任务时,收集到了 nn 份岩浆能源,其中第 ii 份的能量值是 wiw_i ,她
决定将它们分成恰好 kk 组带回基地,每一组都要有至少 11 份能源。
每一组能源会对运输设备产生负荷值,若该组有 xx 份能源,这 xx 能源能量值之和为 yy, 则产生的负荷值为 x×yx\times y
每种分组方案产生的负荷是每一组能源产生的负荷值总和,莓想知道所有可能的分组方案产生的负荷之和对 998244353998244353 取模的结果 。

1n1e61\le n\le 1e6

由于涉及一点二项式反演内容故这里不全。

md 补考试总结去了先不写了。

# 团不过 *

由比滨结衣和雪之下雪乃在玩 NimNim 游戏。
共有 nn 堆石子,双方轮流操作,每次可以从一堆非空石子堆中取走任意个石子,取走最后一个石子的人胜利。
她们决定让由比滨结衣先手,但忘记了每堆初始时含有石子的数目,只知道
每堆至少有 11 个石子,但数目小于 2n2^n ,且每堆石子的数目互不相同。
一共有多少种可能的情况使得由比滨结衣能够取胜呢?
两种情况不同当且仅当存在一堆石子在两种情况中含有的石子数目不同。
由于答案可能很大,你只需要输出答案对 109+710^9 + 7 取模的结果。
友情提示:在 NimNim 游戏中,先手必胜等价于各堆石子数目异或之和不为 00

n1e7n\le 1e7

我看的时候完全没有思路

然后,这个每堆石子数量互不相同是个极其有用的结论。

先做一步补集转换,先手必胜的方案数等价于总方案数减去先手 LOST 的方案数

记一个 gig_i 表示到第 ii 堆的石子状况的总方案数,递推式容易得到:

gi=i=1i(2ni)g_i = \prod\limits_{i=1}^i (2^n - i)

记一个 fif_i 表示到第 ii 堆先手必败石子状态的方案数,做一下讨论:

  • 若前 i1i-1 堆是先手必败,则说明其前缀异或和为 00 ,那这一堆也要是 00 ,而我们发现每堆石头得大于 11 所以这不合法,于是我们要减去 f_

  • 若前 i2i-2 堆是先手必败,则此时的前缀异或和为第 i1i - 1 堆的堆数,那这一堆也得是,不难发现不合法,也得减去。

所以可以得到递推式:

fi=gifi1fi2×(i11)×(2n1(i2))f_i=g_i - f_{i-1} - f_{i-2}\times \binom{i-1}{1} \times (2^n - 1 - (i - 2) )

# 尽梨了 *

丰之崎学园附近共有 nn 个商店,在时刻 00 时,英梨梨从学园出发开始购物。
从学园走到任意一个商店,或从一个商店走到另一个商店需要 11 单位时间。
如果英梨梨在时刻 tt 到达了商店 ii,她需要先花费 ai×t+bia_i\times t + b_i 的时间排队
然后才能购买这家商店的物品。
英梨梨想知道,在时刻 T+0.5T+ 0.5 之前她最多能在多少个不同商店买到物品呢?
这里假定只会在走路和排队上消耗时间,购买物品不消耗时间。

n2e5,T1e9n\le 2e5,T\le 1e9

这是一道感觉比较套路的题,首先直觉上感觉到若我们确定了一些选东西,那拿出来的顺序是一定的,于是我们想到先按一个东西排序。

那么我们考虑在 tt 时刻选到 ii 然后立刻选 jj 的消耗是什么,这样通过交换邻项解一个不等式可得出排序的关键字。

然后就可以 dpdp 了,设 dpi,jdp_{i,j} 表示到第 ii 个店上一个走到 jj 的最小时间,转移显然。

然后我们考虑这个只要 ai>0a_i > 0 时间增长速率极快,于是我们把 ai=0a_i=0 的拿出了先不管,跑一遍 dpdp ,大概 log\log 层就会跑满时间上界,再对 ai=0a_i=0 的做一遍贪心。

# 七负我 *

有一个 nn 个点 mm 条边的图。给一些点分配一些点权(可以是任意非负实数)使得所有点点权和为 xx(点权可以为 00)。一条边 u,v\langle u,v \rangle 的贡献为 uu 的点权与 vv 的点权的乘积。问所有边贡献和最大是多少。

1n40,1x1001\le n\le 40,1\le x\le 100

nb 贪心题!

直觉上可以推出的结论是一定是把点权和平均分配到点上,然后贡献尽量多的边是更优秀的。

然后你可能会想到放在一张完全图上我是不敢想到

考虑证明这个 nb 结论。

对于点对 (u,v)(u,v) 设他们无边,设当前最优的答案给 uu 分配了 fuf_u 权值,给 vv 分配 fvf_v ,连接他们的点权和不妨记做 su,svs_u, s_v ,那这一部分对于答案的贡献就是 fu×su+fv×svf_u\times s_u + f_v\times s_v

不妨设 susvs_u\ge s_v 可以发现,把分配给 vv 的权全给 uu 一点不劣。

然后就是一个最大团的问题了, meetinmid\texttt{meet in mid} 一下即可解决。

感觉这种看着就很贪心结论的题还是要凭着直觉大胆猜测结论,再小心求证。

而贪心结论的证明则考虑交换邻项来反证或者从一些局部情况来归纳

这里就是要观察一对无边的点对对答案的贡献来归纳了。

感觉比较玄妙。