模拟测试95
T1:
求$\sum \limits_{i=0}^p \lfloor \frac{iq}{p} \rfloor$的值。
发现从0枚举很鸡肋。
\begin{array}{ll} 2ans &=& 2\sum \limits_{i=1}^p \lfloor \frac{iq}{p} \rfloor \\ &=& \sum \limits_{i=1}^p \lfloor \frac{iq}{p} \rfloor + \lfloor \frac{(p-i)q}{p} \rfloor \\ &=& (p+1)q - p + \sum \limits_{i=1}^p [p|iq] \\ &=& (p+1)q - p + gcd(p,q) \end{array}
时间复杂度$O(Tlogp)$。
T2:
考虑贪心。
格式化顺序一定是先更新增大的,再更新不变的,再更新减小的。
对于容量增大的硬盘,把格式化前容量小的在放在前面一定更优。
因为如果交换,答案一定不会更优。
对于容量减小的硬盘,可以看成逆过程,把格式化后容量大的放在前面。
排个序直接求。
时间复杂度$O(nlogn)$。
T3:
加号两侧状态相同,减号两侧状态不同。
加号合并,减号连边。
没有钱号时特判即可。
有钱号时,每个钱号代表一些点,合并$k$值相同的点。
分类讨论,判断即可。
时间复杂度$O(n)$。