摘要: 题目链接 题目思路 假设$1-k$都挨在一起,那么答案不就是逆序对嘛 但是要先把他们挨在一起 怎么挨在一起呢,显然是要放在中位数最合适 权值线段树上二分就可以确定中位数了 然后再乱求求就行了 代码 #include<bits/stdc++.h> #define fi first #define se 阅读全文
posted @ 2021-11-10 20:42 hunxuewangzi 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 题目链接 题目思路 这个有贪心的做法 但是看有大佬说对于这种多米诺骨牌问题,二分图染色最好 确实把这个图等价于二分图染色 求白点和黑点的最小值即为答案 代码 #include<bits/stdc++.h> #define fi first #define se second #define debu 阅读全文
posted @ 2021-11-10 14:38 hunxuewangzi 阅读(26) 评论(0) 推荐(0) 编辑
摘要: 题目链接 题目思路 首先呢,状压$dp$还是可以想到的 发现只有20个质数,设$dp[i][j]$表示前$i$个数状态为$j$的方案数 但是时间复杂度明显不允许这样复杂为$n*2^{20}$ 考虑优化 发现数字非常少只有70个,而且对于最后状态的影响,大小为$i$的数的个数只和奇偶有关 那么我们设$ 阅读全文
posted @ 2021-11-10 14:29 hunxuewangzi 阅读(44) 评论(0) 推荐(0) 编辑