20230924 模拟赛哦总结

发布时间 2023-09-24 16:14:00作者: liruixiong0101

模拟赛总结

排名:\(\text{rank 1}\)
分数:\(100+100+100+100=400\)

集训期间第一次 AK!

T1:零用钱 / money

\(T\) 次询问,给你需要构造一个只有 \(s\)\(-d\) 两个元素的数列,需要保证这个数列中所有长度为 \(k\) 的字串内的元素和小于零,且需要让这个序列的元素和是所有满足前面条件的序列集合中的序列元素和的最大值,如果能保证整个数列的元素和大于等于零输出和,否则输出 Deficit

考虑每一个长度为 \(k\) 的字串,要么满足此要求:

\[i\cdot s-(k-i)\cdot d\lt 0 \]

(以上 \(i\)\(s\) 的个数)
由于我们需要让元素总和最大,所以我们需要在满足以上条件的情况下让 \(i\) 尽量大,我们可以用枚举实现。
如果我们在第一个长度为 \(k\) 的字串里有 \(x\)\(s\)\(y\)\(-d\),如果我们要让总的元素和最大,我们需要让