快速沃尔什变换FWT
DoBelieve
天空越暗的时候,你越能看到星辰。
展开
-
Codeforces 662C Binary Table 快速沃尔什变换(FWT)
Description给定一个N*M的01矩阵,可以选择任意行或列,被选择行或列的01值取反,问经过操作能到最少的含1的数量。**NN<=2020,MM<=10510^5Solution考虑把每一列压成2020位的二进制数,对行的操作也可以看成一个2020位的整数,同时显然有,同一行或同一列最多操作一次,操作的先后顺序对矩阵的最终状态不会有影响。 设aia_i表示第ii列上的二进制数,考虑对行的操原创 2017-11-30 15:25:44 · 483 阅读 · 0 评论 -
51nod 1824 染色游戏
Description Data Constraint 11≤nn,mm2202^{20} Solution 首先对rr和bb都作模2操作。 首先有 fx=∑i=0xCixribx−i mod 2f_x=\sum_{i=0}^xC_{x}^i r_i b_{x-i}\ mod \ 2 若fxf_x等于11则说明fxf_x将对答案贡献x2x^2。 接着考虑CixC_{x原创 2018-01-11 16:53:30 · 385 阅读 · 0 评论 -
Codechef April Challenge 2018 Division 1 S Semi-palindromic
Semi-palindromic Description 对于一个不含前导000的十进制非负整数,如果它是mmm的倍数,且出现次数为奇数的某个数字最多只有一个(前导000不算),那么称它是牛逼数。 给定m,nm,nm,n ,求小于10n10n10^n的牛逼数有多少个,输出答案模109+7109+710^9+7 。 Data Constraints 1≤m≤161≤m≤161\leq ...原创 2018-06-06 14:24:14 · 319 阅读 · 0 评论