11 2022 档案
[ABC279C] RANDOM 题解
摘要:思路 我们需要交换 中的任意两列,使 变成 。 考虑一个显然的性质:如果 中的每一列都可以在 中找到相同的一列(注意 中不能有多列对应 中的一列),那么 一定可以变成 ,否则不能。那么根据此性质,我们直接模拟即可。 注意因为数据范围
[ABC279B] LOOKUP 题解
摘要:可能更好的食用效果 前置 首先,我们要引出c++中加入的string,由头文件<string>所定义。 在这道题中,我们需要用到string自带的查找操作find: find(str,pos)可以用来查找字符串中一个字符/字符串在pos(含)之后第一次出现的位置(若不传参给pos则默认为0)。 如果
CF1713C Build Permutation 题解
摘要:题目链接 可能更好的食用体验 思路 看起来或许无从下手,所以我们从小的 开始枚举找规律。 $$ \begin{aligned} &n=1:\quad 0\ &n=2:\quad 1,0\ &n=3:\quad 1,0,2\ &n=4:\quad 0,3,2,1\ &n=5:\quad 4,3
CF1748D ConstructOR 题解
摘要:可能更好的食用体验 既然题目中用到了位运算,那我们就用二进制来解决这道题。 1.判无解 观察 这个样例,我们将其分解二进制: $$ \begin{aligned} (3)_{10} &= (11)2 \ (4){10} &= (100)2\ (6){10} &= (110)_2\ \
手写堆
摘要:void heapup(){ int i=a[0]; while(i>1&&a[i]<a[i/2]){ swap(a[i],a[i/2]); i/=2; } } void heapdown(){ int i=1,j; while(i*2<=a[0]){ if(i*2==a[0]||a[i*2]<a[
究极卡常
摘要:1. register&static&inline 在定义局部非char类型的变量时在前面加入register 在局部char类型变量前加入static 在非主函数和非递归函数前加入inline 2. 火车头传送门(外网评测) 3. 快读 inline int read(){ register in