摘要:
"题面" 【错解】 一眼不可做啊 哎分治? 算不了啊 真的是,打暴力走人 20pts (事实上,还有20pts是随机数据,加个小小的特判就可以) 【正解】 首先,从l开始往后gcd最多只有O(log)种取值,并且是单调减的 所以我们可以二分log次边界,用线段树维护区间gcd,可以做到$O(Nlog 阅读全文
摘要:
"题面" 【错解】 好像就是$|i j|+|a_i b_i|$唉 嗯开始都加i 1,跑一遍,1~(i 1)加1,i~n 减1,线段树维护。 过样例了呢 哎大样例怎么多了那么多啊 跑了个暴力,多得更多啊(雾 是不是数据有问…… woc好像有下去再上来的情况 打个暴力滚粗,30pts 【正解】 考虑分治 阅读全文
摘要:
"题面" 【正解】 题目求最大的最小,可以二分 设$f_i$表示第i个数不改满足条件需要改多少个 可以从j转移,那么[j+1,i]的均匀摊开后的差值应该在范围内 容易推出方程: $f_i=min_{j} \{ f[j]+ i j 1\}$(j要满足上述要求) 复杂度$O(N^2 log|A_i|)$ 阅读全文