• 2024-10-02[ABC150F] Xor Shift
    题意给定两个序列\(a,b\),求将\(b\)循环移位\(k\)位,再给所有\(b_i\oplusx\),求所有满足条件的\((k,x)\)。\(n\le2\times10^5\)。Sol对于区间异或,容易想到差分。考虑对\(a\)和\(b\)分别差分,注意到差分后\(x\)直接消失了!也就是:\(a_0\oplusa_1=b_{(
  • 2024-09-30CTT2022
    D1T1区间计数记\(S([l,r])\)表示可重集合\(\{a_{l},a_{l+1}\dotsa_{r}\}\)考虑统计有哪些区间是重复贡献的,也就是统计所有的区间\([l,r]\),使得存在区间\([l',r']\),满足\(l'<l\)且\(S([l',r'])=S([l,r])\)。那先显然有两种情况:\(r'<l\)以及\(r'\gel\)。
  • 2024-09-29Nim 游戏 和 有向图游戏
    Nim经典的博弈论大致意思:地上有n堆石子,每人每次可从任意一堆石子里取出任意多枚石子扔掉,可以取完,不能不取。每次只能从一堆里取。最后没石子可取的人就输了。问是否存在先手必胜的策略。乍一看手玩一下,发现很复杂,于是考虑把游戏状态形式化地表示出来便于观察。设先手为a,后手
  • 2024-09-25CF1207E XOR Guessing
    思路设答案为\(a\),第一次异或的数为\(b\),第二次异或的数为\(c\),则可以通过两次询问知道\(a\oplusb\)和\(a\oplusc\),所以\(b\oplusc=(a\oplusb)\oplus(a\oplusc)\)。因为范围为\([0,2^{14}-1]\),且每次询问只有\(100\)次,所以可以让第一次询问\(\{1,2,\cdots
  • 2024-09-24关于异或哈希
    Re:疑惑异或哈希异或哈希是个很神奇的算法,利用了异或操作的特殊性和哈希降低冲突的原理,可以用于快速找到一个组合是否出现、序列中的数是否出现了\(k\)次算法如其名,异或+哈希。想起某首歌叫PPAP?Ihavea\(\oplus\),Ihavean\(hash\).(Uhh~)\(\oplushash\)!
  • 2024-09-19CSP2024-23
    A题意:维护序列\(a\),支持单点修改。每次找到满足\((a_1\oplusb)\le(a_2\oplusb)\le\cdots\le(a_n\oplusb)\)的最小非负整数\(b\);或判断无解。\(1\len,q\le10^6\)。肯定是把大条件拆成\(n-1\)个小条件,大条件成立当且仅当所有小条件成立。\(a_{i}=a_{
  • 2024-09-11Codeforces Round 944 (Div. 4) G(思维 + 位运算性质)
    题意给定一个由\(n\)个非负整数组成的数组\(a\)。如果\(a_i\oplusa_j<4\),那么你就可以交换\(a_i、a_j\),其中,\(\oplus\)是按位异或。求出操作若干次后,字典序最小的序列。数据范围:\(1\len\le2\times10^5\),\(0\lea_i\le10^9\)。题解性质:$a_i\oplusa_j
  • 2024-09-08【算法笔记】位运算详解
    0.前言突然想到位运算是个好东西,就来水一波文章了……注意:我把能想到的有关位运算的所有内容都放进来了,所以篇幅较长,请谅解!若有写的不清楚或者不够详细的地方欢迎在评论区补充,谢谢支持!本文中参考代码均使用C++编写。废话不多说,下面步入正题。1.基本运算有一定基础的可以
  • 2024-09-08Mynavi Programming Contest 2021 (AtCoder Beginner Contest 201) A~E 题解
    A-TinyArithmeticSequence题目大意给定序列\(A=(A_1,A_2,A_3)\)。能否将\(A\)重新排列,使得\(A_3-A_2=A_2-A_1\)?\(1\leA_i\le100\)输入格式\(A_1~A_2~A_3\)输出格式如果能将\(A\)重新排列使得\(A_3-A_2=A_2-A_1\),输出Yes;如果不能,输出No。样例\(A\)输出\((5
  • 2024-09-06abc365_E
    abc365E-XorSigmaProblem思路本题首先可以想到用前缀异或和维护,我们记作\(b_i=a_1\oplusa_2\oplus···\oplusa_i\),所求的式子就变成了\(\sum^{n-2}_{i=0}\sum^n_{j=i+2}b_i\oplusb_j\),直接求是\(O(n^2)\)的,考虑如何快速求出\(\sum^{x-1}_{i=0}b_i\oplusb_x\)因为这
  • 2024-09-05异或的一些性质
    1.异或:相同为0不同为1\[0\oplusn=n\]\[n\oplusn=0\]2.异或定理\[4i\oplus(4i+1)\oplus(4i+2)\oplus(4i+3)=0\]证明:由于异或按位进行操作,将\(4i\)、\(4i+1\)、\(4i+2\)、\(4i+3\)二进制右移两位之后,得到\(4\)个偶数,其数值都为\(i\),因此,右移之后的异
  • 2024-09-039月记录
    282.CF2001D贪心做不明白了。按照字典序贪心。比如说奇数位,让颜色最大。有一种说法是选择一个最大的颜色填入,使得填入后剩余颜色都可填入。形式些表述,我们已经构造了\(b_1,b_2,\cdots,b_j\),其中\(b_j=a_i\),设\(l_x\)是颜色\(x\)出现在\(a[i+1,n]\)的最后一个位置,那
  • 2024-08-28博弈论基础
    前置知识mex⁡\operatorname{mex}mex:没有出现过的最小自然数,如mex
  • 2024-08-27博弈论基础
    前置知识\(\operatorname{mex}\):没有出现过的最小自然数,如\(\operatorname{mex}\{0,2,3\}=1\)。\(\oplus\):按位异或。前言博弈类问题大致分为,公平组合游戏、非公平组合游戏(绝大多数的棋类游戏)、反常游戏。只需要关注公平组合游戏\(\texttt{(ICG)}\),反常游戏是公平组合游
  • 2024-08-27CF1554C Mikasa
    本蒟蒻的第一篇题解,如果有什么不足,请dalao轻喷。。。题意题目传送门给出两个数\(n\)和\(m\),求出最小的整数\(p\),使得\(p\)\(\notin\){\(n\oplus1,n\oplus2,n\oplus3,···,n\oplusm\)}。思路异或先思考这道题之前,还不如先思考这道题目所要用的符号
  • 2024-08-24博弈论入门
    博弈论入门博弈论主要研究的是:在一个游戏中,进行游戏的多位玩家的策略。公平组合游戏定义:游戏有两个人参加,轮流参加决策,双方均知道游戏的完整信息;任意一名玩家在某一状态可以做出的决策集合只与当前状态有关,与游戏者无关;游戏中某一状态不可能多次抵达,游戏以玩家无法行动为
  • 2024-08-23运算论
    运算论优先级考虑变换优先级:线性变换(加减乘除)>非线性可逆变换(次幂)>不可逆有结合律变换(最值:max、min、gcd、lcm)>无结合律变换(求众数、中位数)量规避去max、min、gcd、lcm等不可逆变换,而将其转换为加减乘除等变换范围关系将一大部分进行操作可以转换为全局操作加上对另一小部分
  • 2024-08-212024/8/21 模拟赛
    T1试卷答案试卷由若干道不定项选择题构成,只有ABCD四个选项。每道题的答案是一个按字典序排列的非空字符串。例如,A、CD是合法的答案,而BB、DC不是合法的答案。一张合法的试卷由k道题目组成。给定一个长度为\(n\)的由ABCD组成的字符串,进行\(Q\)次操作。支持区间加(将区间内
  • 2024-08-19P10835 『FLA - I』冲云霄v
    题目传送门题目大意若\(x\)和\(y\)的第\(k\)个二进制位相同,结果的第\(k\)个二进制位为\(0\);若\(x\)和\(y\)的第\(k\)个二进制位不同,结果的第\(k\)个二进制位为\(1\)。题目描述给定整数\(n\)和\(m\),判断是否存在满足下列条件的数列\(a\)。本题中数列
  • 2024-08-14MX Weekly 赛时/VP 记录
    感觉题目质量比较高,所以挖了个坑((。X2前三题简单不写洛谷-P10855傻逼赛时想出两种正确思路都他妈的没仔细想,真糖丸了不妨将题目中要求的式子化简。\[\begin{equation}\begin{split}\sum\limits_{i=1}^n\sum\limits_{j=1}^i\gcd(j,i\oplusj)^k&=\sum\limits_{j=1}^n\su
  • 2024-08-082.1 实数集公理系统
    函数是分析学研究的主要对象之一。为了研究函数的各种性质,必须给出实数集的精确定义,因为函数作用在实数集上。数学中的数是极为抽象但又极为基础的对象。关于数的理论是一门丰富的独立课程。在本节中,作者主要罗列了有关实数的一些基本结论。实数集的定义如果以下四组条件
  • 2024-08-06AtCoder Beginner Contest 365(A~E)
    AtCoderBeginnerContest365(A~E)A问题陈述给你一个介于\(1583\)和\(2023\)之间的整数\(Y\)。求公历\(Y\)年的天数。在给定的范围内,\(Y\)年的天数如下:如果\(Y\)不是\(4\)的倍数,则为\(365\)天;如果\(Y\)是\(4\)的倍数,但不是\(100\)的倍数,则为\(366
  • 2024-08-03【A~E】AtCoder Beginner Contest 365
    A-LeapYear题目大意给定\(n\),求第\(n\)年的天数(\(365\)或\(366\))。思路显然地,我们需要判断这个是否为闰年。如果\(n\)不能被\(4\)整除,那么不是闰年。如果\(n\)可以被\(400\)整除,那么是闰年。如果\(n\)不可以被\(100\)整除但是可以被\(4\)整除,那么是
  • 2024-08-03AtCoder Beginner Contest 365 随笔
    擦,F假了A判断闰年B输出次大值的下标用pair排序后即可C给定一个数组\(A_n\)和整数\(M\),尝试找到一个最大的\(m\),使得:\[\sum_{i=1}^n\min(A_i,m)\leM\]不等号左边显然随着\(m\)的增大而增大,所以可以二分一个\(m\),然后判断即可D两个人玩\(n\)局剪刀石头布
  • 2024-07-31Solution - Atcoder AGC052B Tree Edges XOR
    令\(w_{(u,v)}\)为边\((u,v)\)的边权。考虑到对于一条边进行操作影响的是有公共点的边,于是一个想法是把边权转到点权,用点权来表示边权。于是考虑对于每个点构造\(w_u\)使得\(w_{(u,v)}=w_u\oplusw_v\)。因为这是一颗树,所以一定存在合法的构造。其实到了这里,这种