SZ
  • 2025-01-07点分治
    更新日志2025/01/07:开工。概念点分治,通常用于处理大规模的树上路径信息问题。思路我们将原问题划分为多种,对于每个节点,统计经过这个节点且位于这棵子树内的路径答案。为了缩减复杂度,对于每一棵子树,我们都找到它的重心,以重心为新根在子树内进行操作。找重心示例:intcn
  • 2025-01-05[WC2014] 紫荆花之恋 题解
    啊啊啊啊啊啊啊啊啊啊啊我终于改完啦啊啊啊啊啊啊啊。因为没有在最开始的时候将所有点设置为已经重构的,所以直接\(R15-R70\)间卡了两三天。似乎也是我第一次大规模使用指针了。这道题假如只有一次询问,就是一道简单淀粉质,直接在根节点建立平衡树,记录\(r_x-dis(x,rt)\),然后找
  • 2025-01-04[CF2053E] Resourceful Caterpillar Sequence 题解
    显然两步之内决胜负。否则两个人会来回拉扯,平局。考虑何时Aron会赢。称与叶子结点边距离小于等于\(1\)的结点为【制胜点】。开局\(q\)在叶子,\(p\)不在叶子,直接赢。方案数\(c(n-c)\),其中\(c\)为叶子数量。\(q\)在一个连着【制胜点】的点,\(p\)不在【制胜点】。Nora
  • 2025-01-02Win32汇编学习笔记02.RadAsm和联合编译
    https://bpsend.net/thread-151-1-1.html汇编使用资源汇编使用资源的方式和C的一样,也是把资源文件rc编译成 res 再链接进去,汇编没有自己的资源编辑器,需要借助vc6.0或者vs主要是把头文件.h转化为对应的.inc使用vc6.0建立资源文件用vs建立资源文件
  • 2025-01-022025 多校冲刺省选模拟赛 1
    2025多校冲刺省选模拟赛1切割蛋糕(cake)签到题本质上是求\(a\)序列最小满足所有前缀平均值均大于全局平均值的循环位移,由Raney引理启发,找到斜率\(\dfrac{s}{n}\)所经过截距最小的点,易知没有无解情况。时间复杂度\(O(n)\)。游乐园(park)可反悔贪心考虑答案小于等于\(k
  • 2024-12-30P6272 [湖北省队互测2014] 没有人的算术 题解
    本文参考了湖北省队互测Week1解题报告,在部分之处说明可能不如原题解,如有错误请指出。洛谷上的题面缺失了特殊性质,不过原题的特殊性质还是比较具有启发性的,下面是原题面中的数据范围测试点\(1\)考察选手的读题能力。按照题目提供的比较方式暴力递归即可。测试点\(2\sim
  • 2024-12-28[COCI2006-2007#6] V
    前言赛时联想到了讲的一道题认为不可以使用数位\(\rm{dp}\),但是那道题实际上形式上跟这个题不同,所以其实是可以用的思路首先我们用数位\(\rm{dp}\)可以简单地解决选择数字的问题,套路的用\(f(1,r)-f(1,l-1)\)可以解决统计答案的问题,还需要具体的讨论转移怎
  • 2024-12-28十大排序---下
    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、归并排序二、快速排序三、计数排序四、桶排序五、基数排序总结前言今天我们来继续学习十大排序中剩下的五个。提示:以下是本篇文章正文内容,下面案例可供参考一、归并排序    
  • 2024-12-27[ARC189D] Takahashi is Slime 题解
    传送门不难想到一个暴力,对于每一个\(K\),都一个个向左右扩展,直到不能扩展为止。这个做法是\(O(n^2)\)的,我们考虑优化。我们将一个个扩展改成一次性扩展许多个格子。即循环进行下面操作:向左扩展到不能扩展。向右扩展到不能扩展。我们使用二分,看看每次扩展最远到哪。时间
  • 2024-12-27E92 换根DP+倍增 P5666 [CSP-S2019] 树的重心
    视频链接:E92换根DP+倍增P5666[CSP-S2019]树的重心_哔哩哔哩_bilibili   P5666[CSP-S2019]树的重心-洛谷|计算机科学教育新生态(luogu.com.cn)//换根DP+倍增O(nlogn)#include<iostream>#include<cstring>#include<algorithm>#include<vector>us
  • 2024-12-27省选集训 Day 3
    学习了新知识:边三连通,耳分解,双极定向下面是一些基础练习。linkA挺不错的问题。考虑将一个点作为\(G_0\),一个个加入耳来构造边双连通图。容易设计\(f_S\)并枚举子集转移,复杂度\(O(3^nn^2)\)左右。太劣了,考虑将拼耳的过程纳入DP。设\(f_{S,j,k}\)为当前图已经填入
  • 2024-12-24SDOI/SXOI2022 做题笔记
    SDOI/SXOI2022做题笔记持续更新中……题目:https://www.luogu.com.cn/problem/list?tag=114%7C59&page=1目录SDOI/SXOI2022做题笔记[SDOI/SXOI2022]小N的独立集[SDOI/SXOI2022]整数序列[SDOI/SXOI2022]小N的独立集时间复杂度\(O(n^2k^4)\)。ケロシの代码constin
  • 2024-12-24sar Cannot open /var/log/sa/sa*: No such file or directory
    sar命令Cannotopen/var/log/sa/sa*:Nosuchfileordirectory发现/var/log下没有sa文件夹,建了一个,再运行#sar-o24(24为当天日期)就OK了。该任务是由root的cron进程来建立的。1.建立文件/etc/cron.d/sysstat2.写入以下配置内容:#runsystemactivityaccountingtoolevery
  • 2024-12-24ybt1675塔
    1675:塔时间限制:1000ms内存限制:262144KB【题目描述】你有\(N\)座塔一列排开。每座塔各自有高度,有可能相等。你每次可以选择相邻的两座塔合并在一起,即这两座塔的高度叠加后变成了同一座塔。然后原本分别与这两座塔相邻的塔变得与这座新的塔相邻。你的目标是使用
  • 2024-12-1712.17 CW 模拟赛 T4. 记忆碎片
    思路转化题意,问你在一个带权无向完全图中,如何填上\(w_i\in\left[1,\frac{n\cdot(n-1)}{2}\right]\),使得其最小生成树上的边权为给定的\(n-1\)个数考虑模仿\(\rm{kruskal}\)的方式,令\(f_S\)表示当前点集为\(S\),每次转移,如果当前边权需要在最小生
  • 2024-12-16P5773 [JSOI2016] 轻重路径 题解
    Description在二叉树上,不断删除叶子,你要维护其重链剖分后重儿子编号和。如果两个孩子大小相同,在一开始连向左儿子,后面保持修改前的连接。\(n\leq2\times10^5\)。Solution考虑把一个叶子\(x\)删掉会对改变哪些点的重儿子。首先改变的点\(y\)一定在\(x\)到根的链上,同时
  • 2024-12-15C语言中对数组进行解引用的几种常见写法
    1.对数组进行解引用1.1使用数组名+索引(常用)    该方法是最常见,也是最基本的,用数组名加下标来找到数组对应的元素intmain(){ intarr[5]={1,2,3,4,5}; intret=arr[2]; printf("%d\n",ret); return0;}    上面的代码中,数组的下标是0~4,通过arr
  • 2024-12-15树形DP做题记录
    A.「MXOIRound1」城市首先推个小式子,把让求的答案中和\(n+1\)有关的分出来:\[\begin{align}&\sum_{i=1}^{n+1}\sum_{j=1}^{n+1}cost(i,j)\\=&\sum_{i=1}^{n+1}\sum_{j=1}^{n}cost(i,j)+\sum_{i=1}^{n+1}cost(i,n+1)\\=&\sum_{i=1}^{n}\sum_{j=1}^{n}cost(i,j)+\
  • 2024-12-12二十、作业详解(1)
    一、如何把函数处理结果的两个数据返回给主调函数1.形参用数组2.形参用两个指针3.用两个全局变量return只能返回一个数二、函数可以嵌套调用,但不能嵌套定义三、参数个数exec((v1,v2),(v3,v4),v5,v6);        //函数有v2,v4,v5,v6这4个参数四、函数设计
  • 2024-12-10CF2018C Tree Pruning
    分析好像官方题解是反向求解的,这里提供一个正向求解的思路,即直接求出最后所有叶节点到根的距离相同为\(x\)时需要删除的结点数\(ans_x\)。如果我们最后到根的相同距离为\(x\),那么答案有两个组成部分。第一个部分,若到根距离为\(x\)的结点是一个中间结点,也就是说这个结点
  • 2024-12-09可持久化Trie
    可持久化Trie--区间异或最值问题应用:在\(O(logn)\)时间复杂度解决查询区间\([l,r]\)内与数\(x\)异或的最大值。插入操作:把\(n\)个整数插入\(01Trie\),生成\(n\)个版本的可持久化树。查询操作:利用前缀和与差分的思想,用两颗前缀\(Trie\)树相减得到该区间的\(Trie\)
  • 2024-12-08【知识】树链剖分
    树链剖分思想:将一颗树转换成一段序列,满足树中任意一条路径$\Leftrightarrow$不超过\(\logn\)段区间概念:重儿子​ 一个点的重儿子为它的儿子的子树节点个数最多的那个点。​ 如有多个,任选一个。轻儿子不是重儿子的都为轻儿子重边与重儿子相连的边轻边与
  • 2024-12-08初代通讯录(详细讲解+代码)
    文章目录通讯录的介绍c语言实现通讯录的步骤1、制作菜单2、.创建通讯录3、增加联系人4、打印通讯录5、删除联系人6、查找联系人7、修改联系人信息8、排列联系人信息全部代码:1、contact.h2、contact.c3、test.c前言学习了三子棋,扫雷后,我们今天来学习简单通讯录的创
  • 2024-12-06堆排序(c基础)
    voidMaxHeap(int*H,inti,intN){ intl=2*i+1; intr=2*i+2; intmax; if(l<N&&H[l]>H[i])max=l; elsemax=i; if(r<N&&H[r]>H[max])max=r; inttemp=0; if(max!=i) { intp=H[i];
  • 2024-12-05P7206 [COCI2019-2020#3] Lampice 题解
    显然可以对答案奇偶分别二分,判断用点分治。考虑对每个点记录到当前分治中心的路径正着和倒着的hash值,那么两个点之间的路径是回文路径可以用一个简单的式子表示,移项一下把跟一个点有关的值放到一边,用unordered_map记录/查询即可,需要卡常,时间复杂度\(\mathcalO(n\log^2n)\)。