摘要:
C - Kalila and Dimna in the Logging Industry 很容易能得到状态转移方程 dp[ i ] = min( dp[ j ] + b[ j ] * a[ i ] ), 然后斜率优化一下。 一直以为炸精度了, 忽然发现手贱把while 写成了if 。。。。 阅读全文
摘要:
C - Division 思路:我们考虑到一点,从大往小取得顺序是不会有问题的,所以可以直接主席树,但是开不下空间,我们可以log分段求。 #include<bits/stdc++.h> #define LL long long #define fi first #define se second 阅读全文
摘要:
E - Souls-like Game 直接线段树合并矩阵会被卡T掉,因为修改的复杂度比询问的复杂度多一个log,所以我们考虑优化修改。 修改的瓶颈在于打lazy的时候, 所以我们预处理出每个修改矩阵2的幂次,然后直接更新。 //#pragma GCC optimize(2) //#pragma G 阅读全文