• 2024-08-27[ABC367G] Sum of (XOR^K or 0)
    MyBlogs[ABC367G]Sumof(XOR^Kor0)考虑求出\(ans_i\)表示选了\(m\)的倍数个数,异或和是\(i\)的方案数再统计答案。先考虑\(m=1\)怎么做。相当于是\(ans_i=[x^i]\prod_j(x^0+x^{a_j})\),这里的乘法是异或卷积。如果直接xor-FWT复杂度不如暴力。令\(F_i(x)\)表
  • 2024-08-26题解:P9256 [PA 2022] Muzyka pop 2
    题解:P9256[PA2022]Muzykapop2题目传送门题目重点从前往后比较,和数字比较一样,如:12345<12445。如果一个串是另一个串的前缀,那么不是前缀串的那个字典序小。题目思路我爱贪心贪心就行了,每次让x增加1,找出1的个数来实现。要求序列是字典序最小的,因此每次选择尽可
  • 2024-07-21清华训练营预选赛 赛后总结
    汉明码的精髓在于,既然你无法分辨更改检验位的情况,就把检验位放到冲突的位置,消掉那一位位运算的性质:a+b=(a|b+a&b)\(a\oplusb\oplus0\)+\(a\oplusb\oplus(111…11)\)=111…11其实D题才是最简单的题目,比赛的整体难度低于省赛,明年还参加的话开场或许可以考虑和队友分工增进
  • 2024-07-17Masked Popcount 题解
    背景罚了一发,太菜了。为什么我终于有时间的时候她要考试?题意给你\(n,m\),问\(\sum_{i=0}^{n}popcount(i\&m)\)。其中\(\&\)代表位运算,\(popcount\)代表一个数字二进制下\(1\)的个数。分析两个数字在二进制下根据数据范围有\(60\)位。所以我们考虑每一位对答案的贡
  • 2024-06-09D - Masked Popcount
    D-MaskedPopcounthttps://atcoder.jp/contests/abc356/tasks/abc356_d 思路对于m的所有为1的bit位置,统计0~n中所有对应对bit位置中1的个数,如何统计呢?观察如下bit位表:从右向左第一位循环节为 01从右向左第一位循环节为 0011从右向左第一位循环节为 0
  • 2024-06-05abc_356 Masked Popcount
    #include<bitsstdc++.h>#definelllonglong#defineN100005#definemod998244353usingnamespacestd;llsum_b[N],sum_p[N],p[N],a[N],sum;voidf(lly){llx=y,t=1,s=1;while(x){if(x%2==1)a[t]=1;x/=2;
  • 2024-04-01ABC347 C~D~?(更新中)
    Portal:https://atcoder.jp/contests/abc347/tasksABC347只过了\(A,B\),再创新低,。。。遂来补题C-IdealHolidays题意简述输入\(n,a,b,d_1,d_2,…,d_n\),表示在Atcoder国每周分为\(a\)天休息日和\(b\)天工作日,现在有\(n\)个事件,第\(i\)个事件落在第\(d_i\)日。我忘了今天是这
  • 2024-03-02CF vp合集
    CF1936/1937B考虑计数只需要找到最后一个拐点和第一个拐点。C可以先花\(n\)次找到最大数,然后找一些位置\(j\)使得\((p_i=n-1)|p_j\)最大,最后找到最小的\(p_j\)。考虑为啥是对的,因为得让异或最大,而且是排列,所以其中一个取最大不劣。然后找另一个能尽量填补0的位置的数。
  • 2024-02-032024 日寄
    2/3经典不会D,开摆abc怎么G放树套树的板子啊,还是超级削弱版split+merge>>rotate+splay2/2__builtin_popcountll也能longlong__builtin_popcount只能处理int,longlong要__popcount,但要c++202/1我的水平:蓝色的ds绿色的dp红色的贪心(小粉兔半夜直播打原神(
  • 2023-12-24闲话12.24
    在学校的第一天。上午下午卷了昨天讲的《数论》,感觉收获很多啊,抽象的计数题也见了一大堆
  • 2023-11-12ABC328G 题解
    blog。剩下几分钟的时候胡出来了,但是时间不够,痛失AK/dk。\(N\le22\),显然状压DP。\(dp_s\)表示确定\(s\)集合的元素所需的代价(这些元素都放在最前面)。确定了\(s\)后,发现会有\(\operatorname{popcount}(s)\)个元素堆在前面,那么枚举\([L,R]\)接在后面,也就是\([\opera
  • 2023-11-012023-10-26 模拟赛
    C很久没见到过这么清晰的讲题人了。我们先来考虑一些边界情况。全是\(0\)时这个时候其实就是划分成至少\(k\)段的方案数,组合数计算即可。答案大概为\[\sum_{i=k-1}^{n}\binom{n-1}{i}\]存在前导零长度大于等于\(k-1\)时例如001111想分成至少\(3\)段,发现
  • 2023-10-252023.10 做题纪要 #3
    目录2023.10.23P9755[CSP-S2023]种树ABC304ExConstrainedTopologicalSort2023.10.24AGC019EShuffleandSwapAGC017FZigzagCF1827EBusRoutes2023.10.25P8426[JOIOpen2022]放学路(SchoolRoad)P6790[SNOI2020]生成树P9333[JOISC2023Day2]Council2023.10.23CSP
  • 2023-10-02Gym 103428B Subset
    CF传送门首先考虑没有选出的数互不相同的限制。设\(f_m\)为选出\(m\)个\(\in[0,n]\)的数,异或\(\text{popcount}=k\)的方案数。可以考虑枚举这\(m\)个数和\(n\)的\(\text{LCP}\)(要求后一位为\(1\)),然后钦定一位为\(1\)来满足\(\text{popcount}\)的限制。那
  • 2023-09-24#20230924
    20230924NOIP#14总结时间安排8:10~8:35看题,\(B,D\)看完没一点想法先放放。8:35~9:20写\(A\)的前两档和\(C\)的第一档。9:20~9:40瞪出来了\(A\)的正解写了。(但是因为没判\(-1\)导致\(100\Rightarrow30\)9:40~10:00写\(B\)的第一档。10:00~11:55觉得\(B,
  • 2023-07-17P9451 [ZSHOI-R1] 新概念报数 题解
    目录DescriptionSolutionCodeDescription在此题中,对于一个数\(x\),若\(\texttt{popcount}(x)\geq3\)(即\(x\)在二进制下\(\texttt{1}\)的个数大于等于三时),那它是非法的,否则其为合法的。给定\(T\)个数,如果当前的数\(x\)是非法的,则输出No,Commander,否则输出第一个大于
  • 2023-04-07【题解】CF472G Design Tutorial: Increase the Constraints
    《正解分块+FFT跑1min,__builtin_popcount暴力跑10s》《没人写正解,CF也不卡》思路正解:分块+FFT乱搞:__builtin_popcount首先我们知道哈明距离可以用一种\(O(|字符集||S|)\)的算法求。具体考虑枚举字符集中的每一个字符,将两个串中是该字符的位置看作\(1\),不是该字
  • 2023-03-20【题解】CF1034E
    题目描述给定\(n\)和长度为\(2^n\)的数列\(a_{0},a_{1}...a_{2^n-1}\)和\(b_{0},b_1...b_{2^n-1}\),保证每个元素的值属于\([0,3]\)生成序列\(c\),对于\(
  • 2023-03-11快速求popcount的和
    前置知识\(popcount(n)\)表示将\(n\)转为二进制后的数中\(1\)的个数。结论\[\sum_{i=1}^{n}\text{popcount}(i)=\sum_{i=1}^{\left\lceil\log_{2}{n}\right
  • 2023-01-10【CF1119H】Triple
    【CF1119H】TripleDescription给出\(n\)个三元组\(a_i,b_i,c_i\),范围为\([0,2^m-1]\)再给出参数\(x,y,z\),每个三元组有\(x\)个\(a_i\),\(y\)个\(b_i\),\(z\)个\(c_i\)对
  • 2023-01-04[ABC283Ex] Popcount Sum
    ProblemStatementFindthesumofpopcountsofallintegersbetween$1$and$N$,inclusive,suchthattheremainderwhendividedby$M$equals$R$.Here,thep
  • 2022-11-12c++ bit 库用法
    c++20加入了一个叫做bit的库,不如来看看里面有什么?bit_cast效果和reinterpret_cast类似,按二进制位取值,constexprfloatN=100;constexprintM=std::bit_cast<int>
  • 2022-11-06【模板】popcount
    postedon2022-02-0418:11:33|under模板|sourceintpopcount(intx){#defineBIT2(n)n,n+1,n+1,n+2#defineBIT4(n)BIT2(n),BIT2(n+1),BIT2(n+1),BIT2
  • 2022-09-28【PE806】Nim on Towers of Hanoi(DP)(生成函数)
    NimonTowersofHanoi题目链接:PE806题目大意一个有n个盘子的汉诺塔,在第i个状态的时候如果三个柱子的盘子个数的异或和是0,就会给i的贡献。求n=100000时候的
  • 2022-09-22闲话 22.9.22
    闲话发现最近gtm在无意识(?)地唱《月光》。于是放一下歌词!(其实就是你自己想放吧喂)月光ガラクタばかりを集めて一味收集毫无价值的杂物ボロ切れひとつを被せた以一