摘要: E - Many Operations 我们发现这个的位运算的顺序是不可以改变的 那我们就不能把后面的结果先算出来做 那怎么办呢 我们考虑数据范围给的是2的30次方 我们考虑拆位 我们可以发现 位数上仅有0/1 两种状态 30位 N是2e5 好像可以dp 我们就由此设置dp[i][j][k]为当前第 阅读全文
posted @ 2022-09-16 19:36 ycllz 阅读(62) 评论(0) 推荐(0)
摘要: F - Sorting Color Balls 我们不难发现排序的花费一定是逆序对的数量 并且 颜色相同的逆序对也不会耗费 那我们求一次总的逆序对 再颜色相同都求一次逆序对即可 但是注意每次求完都要清空 我们可以直接add(x,-1)即可 #include <bits/stdc++.h> using 阅读全文
posted @ 2022-09-16 18:59 ycllz 阅读(30) 评论(0) 推荐(0)
摘要: D - Unique Username 显然搜索 我们枚举全排列的同时枚举额外'_'的个数 但是注意的是我们要恢复现场 但是s显然不能-= 那我们用一个tmp变量即可 #include <bits/stdc++.h> using namespace std; const int N = 2e5+10 阅读全文
posted @ 2022-09-16 14:07 ycllz 阅读(77) 评论(0) 推荐(0)