该文被密码保护。 阅读全文
摘要:
考虑一个数要么在左边构成顺序列,要么在右边构成逆序列。 两者的代价是他与他左边的数构成的逆序对个数以及他与他右边的数所构成的顺序对数。 两者取最小值。 累加。 输出。 AC。。。。。。 为什么我考场上没有想到啊。。。。。。。。。FAF。 代码 #include<bits/stdc++.h> usin 阅读全文
摘要:
思路清奇的一道数据结构题。 首先忽略字典序要求,贪心出一个最大得分。 然后用权值线段树维护这个得分,具体的说,就是在保证最大得分的基础上,调整字典序最大。 首先,我们将所有的$a、b$值都丢进一棵权值线段树,这样,两种值就可以互相沟通了。 在线段树向上递归的过程中维护当前区间的贡献,以及在计算贡献后 阅读全文