省选测试39
A.老洪的遍历
将题中给出的贡献式转化,得到
\(\frac{B_iB_j}{2}(\frac{1}{A_j}-\frac{1}{A_i})\)
发现将每个点扔到二维平面,坐标为\((B_i,\frac{B_i}{A_i})\)
那么贡献就是\(i\),\(j\),原点\(O\)三点有向三角形的面积
所以求一个凸包就是答案了
B.老洪的神秘操作
首先一个很常用的套路是转化为等差数列,每次挑选两个位置,\(+/-\)相同的数值
然后发现先将\(1,6\),\(2,5\),\(3,4\)这样的数对配对一定不劣
剩下了一部分数,这些数显然能划分成7的倍数的组数越多越好
所以考虑一个dp, \(dp[i][j][k][l]\)表示用了\(i\)个第一个剩下的数,\(j\)个第二个剩下的数,\(k\)个第三个剩下的数,此时无法划分成整组,剩下的一组值为\(l\)的最大划分组数
转移枚举当前这次用了第几种数就可以了, 第一维滚动
C.老洪的数组
考虑最裸的\(20nm\)暴力,发现可以分块
设块长为\(k\)
对于询问分块,每次到一个新块就暴力\(20*n\)去求出每个位置的答案, 这部分复杂度是\(20*n*\frac{m}{k}\)的
然后对于每次询问,暴力去扫当前块内对其有贡献的修改,这部分复杂度是\(m*k\)的
所以计算得\(k\)最优为\(\sqrt {20n}\)
此时复杂度为\(\sqrt {20n} * m\)
如初见 与初见