• 2024-11-20洛谷P6225异或橙子
    洛谷P6225异或橙子位运算思维树状数组这是题面思路先看一下这个式子要干什么例如\(l=2,u=4\)的情况,记橙子序列\(A\)中第\(i\)个橙子的整数是\(a_i\),那么他要求的就是:\[a_2\oplusa_3\oplusa_4\oplus(a_2\oplusa_3)\oplus(a_3\oplusa_4)\oplus(a_2\oplusa_
  • 2024-11-20cf round 863 B
    XOR=Average题目https://codeforces.com/contest/1758/problem/B主要意思给定一整数n,要使n个数的异或=n个数之和的平均值,输出这n个数思路n是奇数的时候n个相同的数(设为a)的异或也为a,n个a之和的平均值也为an为偶数的时候n个相同的数(设为a)的异或
  • 2024-11-20HZOI NOIP 2024 Round 24 T2 取石子 官方做法
    发现大多数的题解都是不同于官方题解的做法,这里我将介绍官方题解做法。Solution证明先手是否可以必胜的方法相差无几,为了方便后边行文,这里介绍我的思路:考虑各堆石子和为奇数的情况(以下简称为“奇状态”,另一种称为“偶状态”)一定先手必胜:两人一次取一个即可。考虑偶状态。可以发
  • 2024-11-19线性基小记
    线性基(这里是异或线性基)是对于序列\(a_1...a_n\)满足以下条件的一个极小集合\(\mathrmS\):\(S\)中的所有元素可以通过异或表示出\(a\)中的所有元素。\(S\)在满足第一个条件的情况下,集合大小最小。进一步的,可以推出以下性质:\(S\)中任意元素的异或和不等于\(
  • 2024-11-18关于数值交换
    如何在c语言环境中定义一个函数,让他实现交换两个整型的数值?第一次拿到这个问题时,第一反应是这不简单吗?然后尝试写了代码如下:1在这段代码中,我们先把a 的值存到temp 中,然后把b 的值赋给a,最后把temp(也就是原来a 的值)赋给b,完成交换。<借助临时变量交换,
  • 2024-11-16CF2036G Library of Magic
    Problem给出1~n每个数2个,共2n个,然后拿走3个不相等的数,可以进行最多150次询问,可以得到值为l-r的所有数的异或和,请你最后给出这3个数。其中\(3\len\le10^{18}\)Solve不建议做法:分治,不断给1~n区间分块原因:需要进行的询问在不优化的情况下能达到200左右,需要不断找地方优化,且
  • 2024-11-15rust逆向初探
    rust逆向葵花宝典rust逆向技巧rust逆向三板斧:[!NOTE]快速定位关键函数(真正的main函数):观察输出、输入,字符串搜索,断点等方法。定位关键加密区:根据输入的flag,打硬件断点,快速捕获程序中对flag访问的位置(加密区)。定位错误输出(附近一定有比较功能的程序):定位到比较位置
  • 2024-11-1411.13
    A.防诈骗\(\text{Sol1:}\)首先可以把这\(n\)个水杯划分为不交的链,对链暴力\(\mathrm{mex}\)之后发现很有规律,按照经典结论把所有游戏的\(SG\)函数求异或和,如果为\(0\)那么后手必胜,否则必败。但是由于是求第\(k\)小满足后手必胜的\(n\),所以只能拿答案\(\le10^7\)的
  • 2024-11-13初识算法 · 位运算(2)
    目录前言:判定字符是否唯一丢失的数字比特位计数只出现一次的数字III前言:​本文的主题是位运算,通过四道题目讲解,一道是判断字符是否唯一,一道是只出现一次的数字III,一道是比特位计数,一道是丢失的数字。链接分别为:338.比特位计数-力扣(LeetCode) 面试题01.01.判定字
  • 2024-11-13AT_agc011_d [AGC011D] Half Reflector 题解
    用\(1\)表示A,\(0\)表示B,观察进行一次操作后字符串会发生什么变化。首先当第一个数为\(1\)时,只会将第一个数变为\(0\)。对于剩下的情况,手玩一下可以发现会将第一个数移到末尾,然后将所有数异或\(1\)。先考虑暴力怎么做,可以记一个指针\(i\)和当前应该给全体数异或的值\(
  • 2024-11-13P10856 【MX-X2-T5】「Cfz Round 4」Xor-Forces题解
    题意:给定一个长度为\(n=2^k\)的数组\(a\),下标从\(0\)开始,维护\(m\)次操作:给定\(x\),设数列\(a'\)满足\(a'_i=a_{i\oplusx}\),将\(a\)修改为\(a'\)。其中\(\oplus\)表示按位异或运算。给定\(l,r\),查询\(a\)的下标在\(l,r\)之间的子数组有多少颜色段。不保
  • 2024-11-11xor
    题目链接:xor。下载附件后,使用IDA打开,并反编译,定位到main函数,如下。通过查看main函数源码,可以发现该程序主要的操作如下。for(i=1;i<33;++i)__b[i]^=__b[i-1];if(!strncmp(__b,global,0x21uLL))printf("Success");即,把用户的输入进行
  • 2024-11-11AES加密原理
    文章目录一基础知识1.c语言如何储存二维数组一维数组二维数组2.异或运算二加密第一步——做好分组和异或运算算法原理C语言实现思路详细实现步骤三S盒子——对每个字节映射更安全字节代替(S盒)算法原理C代码实现思路C代码实现四行位移——逐行递增的移动方式行移
  • 2024-11-11一个关于异或线性基的有趣结论
    作者并不是很懂线性代数相关的一些术语,所以可能本文很多东西说法并不是很标准,不过从逻辑上应该是足够严谨的。符号约定:本文线性基均指异或线性基。本文向量均指\(01\)向量。一个大小为\(n\)线性基为\(n\)个大小为\(n\)的向量构成。一个向量\(p_i=(p_{i,1},p_{i,2
  • 2024-11-10CCPC 网络赛题解(D/I/J)
    D根据题目给出的构造方式,\(S_n'\)的长度会达到\(2^n\)数量级,没法求出\(S_n'\),所以考虑递推。设\(dp_{i,l,r}\)为\(S_i'\)里\(T\)的\([l,r]\)区间以子序列的方式出现了多少次,可以写出转移方程:\(dp_{i,l,r}=\sumdp_{i-1,l,k}\cdotdp_{i-1,k+1,r}+[a_i=T_k]\cdot
  • 2024-11-0911.08
    感觉写的有点意识流。A.BZOJ5176把\(-1/1\)转化为\(0/1\),问题就变为一个格子和它相邻四个格子异或和为\(0\)。容易发现第一行的状态确定了,整个网格的状态就确定了。对于给定的\(m\)个格子,其实就是解\(m\)个异或方程,但是我们还需要让我们的状态合法,而合法的等价条件为
  • 2024-11-09博弈论
    定义必胜或必胜状态:仅仅考虑当前的状态,不考虑的操作人时,一定必胜或必输\(a\oplusb\):\(a,b\)在二进制下,对位取反。Nim游戏考虑有\(n\)堆石子,两个人轮流来拿走棋子(至少拿一个),拿到最后剩下的一颗棋子的人获胜。结论:定义Nim和\(=a_1\oplusa_2\oplusa_3\oplus\dots
  • 2024-11-08找单独的数(获取数组中只出现一次的数)
    问题描述在一个班级中,每位同学都拿到了一张卡片,上面有一个整数。有趣的是,除了一个数字之外,所有的数字都恰好出现了两次。现在需要你帮助班长小C快速找到那个拿了独特数字卡片的同学手上的数字是什么。要求:设计一个算法,使其时间复杂度为O(n),其中n是班级的人数。尽量减少额
  • 2024-11-06CF 1438 题解
    CF1438题解ASpecificTastesofAndre考虑一种非常简单的构造:\(a_i=1\).不难发现满足条件.BValeriiAgainstEveryone结论:符合条件当且仅当有两个一样的元素.证明:充分性显然,下证必要性.若不存在两个一样的元素,则由于无法进位,故没有办法得到两个区间和在相
  • 2024-11-06CF963-Div2-E. Xor-Grid Problem
    CF963-Div2-E.Xor-GridProblem题意给定一个\(n\timesm\)的矩阵\(a\),有两种操作:选择一行,把每个数变成所在列所有数的异或之和。选择一列,把每个数变成所在行所有数的异或之和。求进行任意次操作后整个矩阵最小的美丽值。思路第一个发现:同一数异或两次相当于没有异
  • 2024-11-04洛谷题单指南-字符串-P6824 「EZEC-4」可乐
    原题链接:https://www.luogu.com.cn/problem/P6824题意解读:已知整数序列a[i],i在1~n,有整数k,求一个整数x,要求a[i]^x<=k,使得符合要求的a[i]数量最多,求这个数量。解题思路:1、确定x的范围由于a[i]^x<=k,因此,x的有效二进制位不可能超过a[i],而a的取值范围<=1000000,因此x差不多
  • 2024-11-012024网鼎杯线上赛REVERSE02(超详细)
    进入主函数分析代码发现了四段加密,一层一层进行解密第一步:打开进入main函数,然后分析代码第一个加密对dest的八个字节做了乘2加密,密文是s2伪代码下看不全在汇编下看第二步:第二块数据进行了异或加密异或key是XorrLord,然后写脚本进行解密拿到了第一段和第二
  • 2024-11-012024.11.1 test
    B维护长度为二的次幂的数组,支持单点修改,区间和,全局执行以下三种操作之一:for(inti=0;i<n;i++)b[i]=0;for(inti=0;i<n;i++)b[i()x]+=a[i];for(inti=0;i<n;i++)a[i]=b[i];()里为或,且,异或中的一种。\(n\le2^{19}\)。考虑线段树维护。注意到如果为或/且,那么相当于对
  • 2024-11-01trie树
    顾名思义,trie树是由字典与树的结合体,是一种方便快捷地存储字符串等字符集较小的串集的数据结构(不确定算不算数据结构)而其结构是朴素的。trie树的节点本身并没有特殊的含义,其信息更多体现在边上。如下图这是一颗典型的trie树。例如我们要表示aba这个字符串,我们就从1->2->6->11