dep
  • 2025-01-07网络流23题做题笔记
    link【模板】网络最大流#include<iostream>#include<cstdio>#include<cstring>#include<queue>usingnamespacestd;usingll=longlong;constintN=1e5+5;constllinf=1e16+5;intn,m,S,T,head[N],idx=1;structedge{intto,next;llval;}e[N&l
  • 2025-01-07P3714 [BJOI2017] 树的难题
    P3714[BJOI2017]树的难题题目描述给你一棵\(n\)个点的无根树。树上的每条边具有颜色。一共有\(m\)种颜色,编号为\(1\)到\(m\),第\(i\)种颜色的权值为\(c_i\)。对于一条树上的简单路径,路径上经过的所有边按顺序组成一个颜色序列,序列可以划分成若干个相同颜色段。定义
  • 2025-01-07P4175 [CTSC2008] 网络管理
    P4175[CTSC2008]网络管理Solution:存了半年,骂了半年的树上树套树还是在今天咬着牙写完了真是可恶首先我们来回顾一下如果不带修的话这题怎么做:对每个点维护一颗主席树,存rt->u这条路径上的边的权值。然后对于一个查询(x,y,k)在x+y-lca-fa[lca]这颗树上查第k大值.那么我
  • 2025-01-06可持久化数据结构
    可持久化数据结构呢,就是说这些数据结构,它们都非常持久(其实就是可以访问和修改历史版本的信息可持久化线段树可持久化权值线段树就是主席树如果你还不太了解,可以看看当然还有更普遍的可持久化线段树——支持区间修改的。考虑pushdown会影响下方历史版本的线段树信息,自然想到
  • 2025-01-05B. 树上的回忆 (memory) 题解
    \(dis(i,j)\)有两种转换方式,第一种是统计每条边被经过了多少次,第二种是变成\(\sum_{i=l}^{r}\sum_{j=l}^{r}dep(lca(i,j))\)。这里采用第二种(因为第一种寄了)。先考虑暴力,采取换根DP:把\([l,r]\)建一棵虚树。对于一个点\(x\)尝试计算\(\sum_{y}dep(lca(x,y))\)。\(y\)
  • 2025-01-05参考vue3,手写一个响应式系统
    手写一个响应式系统是一个复杂且有趣的任务,它涉及到很多Vue3内部的核心概念,如Proxy、ReactiveEffect、DependencyTracking等。下面是一个简化的响应式系统的实现,以帮助你理解其基本原理。//创建一个存储所有响应式对象的WeakMap,用于依赖收集和触发更新consttargetMap=new
  • 2025-01-02代码随想录算法训练营第二十二天| 77.组合、216.组合总和、17.电话号码的字母组合
    目录组合的递归思路来源:77.组合216.组合总和17.电话号码的字母组合组合的递归思路来源(核心是如何用递归实现多重循环):(1)用三重循环实现:3个数中选3个数(可重复),求所有可能 /*11111211312112212313113213321121221322122222
  • 2025-01-01高一上一月上旬日记
    1.1闲话以为下午\(2:30\)开始进校,遂从家里出发已经比较晚了。到学校后发现是\(2:30\)在机房做好,遂直接拉着行李来机房了。晚上\(miaomiao\)说今明两天把字符串和动态规划专题收收尾。做题纪要CF601EAMuseumRobbery线段树分治。点击查看代码constllmod=1000
  • 2025-01-01网络流初步
    网络流初步(脑部整理)呜呜呜,家人们也是学上网络流了。咸鱼起手,你反应得过来吗?英语不太好(老英不会看窝博客吧)Whatis网络流?概述网络\((network)\)是指一个特殊的有向图\(G=(V,E)\),其与一般有向图的不同之处在于有容量和源汇点。$E$中的每条边$(u,v)$都有一个被称为
  • 2024-12-31Vue是怎样依赖收集的?
    Vue的依赖收集是Vue实现响应式数据绑定的核心机制之一。在Vue中,当组件初始化时,Vue会对组件的data进行初始化,将普通的JavaScript对象转换成响应式对象。这个过程中,Vue会进行依赖收集,以便在数据发生变化时能够通知到所有依赖这个数据的地方。以下是Vue依赖收集的主要步骤和原理:De
  • 2024-12-29[luoguP4556] [Vani有约会] 雨天的尾巴
    题意给定\(n\)个点的无根树,进行\(m\)次操作,每次使\(x\toy\)路径上的每个点的可重集合内都插入一个\(z\),求每个点的可重集合内最多的数是多少,数量相同输出最小的。sol路径操作、离线,因此可以想到树上差分。开一个数组,记录每个点的可重集合内每个数的个数,然后做树上差分
  • 2024-12-28n皇后问题
    我们首先从第一行开始放,然后对第一个皇后所在的这一行和这一列进行标记,再对四个角的地方进行标记,标记的就是接下来不能放的位置#include<iostream>usingnamespacestd;constintN=15;intans=0;intvis[N][N];//开一个棋盘数组,用来进行标记intn;voiddfs(intdep)/
  • 2024-12-27机器分配(assigned) 题解
    题目在主页include<bits/stdc++.h>usingnamespacestd;inta[15][25],f[15][25];voiddg(intdep,intmax,intrest){if(dep==0)return;inti;for(i=0;i<=rest;i++)if(max==f[dep-1][i]+a[dep][rest-i])break;dg(dep-1,f[dep-1][i]
  • 2024-12-25[BZOJ4771] 七彩树 题解
    好题,又学两个思路。先把问题变简单一点,去掉深度限制,那么有两种做法:经典的前驱后继转化到二维数点。颜色相同的点按\(dfs\)序排序,每个点\(+1\),相邻两点\(lca-1\)。转化为区间求和。第二种相对实现简单。假如加上深度,我们可以离线问题,按深度顺序加点。要在线的话,只
  • 2024-12-24Keys
    题目链接题意:求所有符合题目要求的真假钥匙的总数题解:先看数据范围N<=15,M<=100,数据不大,直接暴力枚举2^N种情况,然后对每组测试进行核验,当每组测试都通过时,这组数据符合要求。代码#include<bits/stdc++.h>usingnamespacestd;usingll=longlong;constintN=
  • 2024-12-23网络流相关技术
    基础部分最大流Dinic板子#include<bits/stdc++.h>usingnamespacestd;typedeflonglongll;#definegcgetcharllrd(){ llf=1,r=0; charch=gc(); while(!isdigit(ch)){if(ch=='-')f=-1;ch=gc();} while(isdigit(ch)){r=(r<<3)+(r<<
  • 2024-12-22【Python系列】Python中的`any`函数:检查“至少有一个”条件满足
  • 2024-12-22CF2040D 题解
    构造题做得较少,所以性质观察得较慢。值域给的\(2n\)非常诡异,想到考虑\(2\)的倍数。按深度记录下每层结点,发现隔一层依次按\(2\)的倍数填充,即可满足。即:先填奇数层,再填偶数层。但是连续的偶数是不能相邻的,发现当深度在\([2,4]\)时,无论以何顺序按层填充,都会有问题。处
  • 2024-12-21洛谷 P11411 兰奇的卡牌游戏——题解
    洛谷P11411兰奇的卡牌游戏传送锚点摸鱼环节兰奇的卡牌游戏题目描述作为制卡大师的兰奇,发明了一种自助型卡牌游戏。给定\(n\)张卡牌,第\(i\)张卡牌编号为\(i\),其权值为\(a_i\),卡牌的权值互不相同。这个卡牌游戏的规则需要自己生成。一开始,所有的牌都在备选区。从备选
  • 2024-12-15蓝书 0x20
    0x21树与图的遍历164.可达性统计令\(f[x]\)表示从\(x\)出发可到达点的集合,那么\(f[x]=(\cupf[y])\cupx\)(存在边\((x,y)\))。所以我们可以使用拓扑排序,倒着拓扑序进行计算。处理这个集合我们可以想到二进制压缩,但是一般二进制数没有这么大,所以需要\(bitset\)。bit
  • 2024-12-14状态压缩DP
    不得不说,状压DP是我比数位DP还要烂的板块。尽管其代码很短,但每次写的仍然漏洞百出,要调很久,还是太不熟练了。以前一直搞不清楚状压与数位的区别,现在大概知道了:数位更专注于“数”,而状压只是一般而言将数据转化为二进制(当然也有三进制之类的神秘做法)方便转移及处理。P1896[
  • 2024-12-12P11179 [ROIR 2018 Day1] 管道监控 题解
    题解:P11179[ROIR2018Day1]管道监控秒秒题。没有题解呢,来发一发。建议降蓝。思路发现往下匹配路径不好处理,于是反转每个路线的字符串,然后从下往上移动覆盖,这样定了一个方向。若只输出最小值,就从下往上dp,发现可以\(n^3\)处理,猜测正解设两维状态,\(\Theta(n)\)合并。第一
  • 2024-12-121
    题意给一棵树,每条边边权为\(1\),每个点有一种颜色\(c_i\),要求给所有\(m\)个颜色赋予一个中心点\(p\),使得对于任意点\(i\),$p_{c_i}$是所有\(m\)个中心点中距离\(i\)最近的点(如果距离相同取颜色编号最小的点).求方案数.\(n,m\le3000\)题解
  • 2024-12-12倍增求LCA_例题
    最近公共祖先(LCA)https://www.luogu.com.cn/problem/P3379点击查看代码#include<bits/stdc++.h>#defineIOSios::sync_with_stdio(false),cin.tie(0),cout.tie(0)usingnamespacestd;constintN=1e6+5;constintLogN=20;intn,q;longlongdep[N],father[N][LogN+1];
  • 2024-12-08BUUCTF nextGen1 (小白能看懂)
    题目中的提示所flag就藏在服务器的/flag.txt中,但是如果直接访问并没有得到flag,如下图所示做web题我喜欢先查看源码看看有没有什么超链接点进去看看,其它超链接点进去没有发现有用的信息,可以看到这下面有一个超链接,最后一个超链接里面发现js代码查看一下意思functionmyFunc(