DIS
  • 2024-11-14Solution - Codeforces 1681E Labyrinth Adventures
    能够发现这个最短路的形态一定是从低层一层一层走到高层的。那么这就说明若起点终点对应层数为\(x,y\)。若\(x=y\)则直接算,就是曼哈顿距离。否则不妨钦定\(x<y\)(不满足就交换,不影响结果),那么层数\(z\in[x,y)\)的其中一个门肯定都会被经过。于是考虑把\(\operator
  • 2024-11-14MX 炼石计划 NOIP 模拟赛20(我真做过1~19吗?)
    MX炼石计划NOIP模拟赛#20T1邻间的骰子之舞二分答案,发现性质,签到,过。记得开__int128没开,挂30.码:CODE#include<bits/stdc++.h>typedeflonglongll;usingnamespacestd;constintN=2e5+100;#ifdeflinux#definegetchargetchar_unlocked#define
  • 2024-11-13费用流
    暴力intvis[N],lst[N];lldis[N],flow[N];intSPFA(){ rep(i,1,n)dis[i]=INF; queue<int>q; q.push(s),dis[s]=0,flow[s]=INF; while(!q.empty()){ intu=q.front(); q.pop(),vis[u]=0; for(inti=h[u];i;i=e[i].n){ int
  • 2024-11-13noip模拟12
    A花鳥風月对于每个区间,若左边端点为\(l\),右边端点为\(r\),那这个地方能放下的线段数则为\(\frac{r-l}{a+1}\)。那么每进来一个坏点,只会影响它的前驱后继的区间。那我们用set或者map维护一下前驱后继,每次加点去抵消它的区间的影响,再加回来就可以了。点击查看代码#incl
  • 2024-11-13P6628 [省选联考 2020 B 卷] 丁香之路 题解
    P6628[省选联考2020B卷]丁香之路题解首先考虑题目中路径权值的含义:\(i,j\)两点之间的最短路就是\(|i-j|\)直接连边。题目要求从\(s\)遍历到每个点,到终点每个\(x\)的最短时间。于是我们不妨枚举每个\(x\),考虑在\(O(n)\)至\(O(n\logn)\)的时间复杂度里解决问题
  • 2024-11-12计蒜客:圣诞树(dijkstra,特殊的生成树)
     基础原理:特殊的生成树给定一张无向图,其中边权都是正数,你需要求出总代价最小的生成树,生成树上每条边 (u,v)(u,v) 的代价为 w(u,v)∗count(v)w(u,v)∗count(v),其中 w(u,v)w(u,v) 为边 (u,v)(u,v) 的权值,count(v)count(v) 是 vv 所在子树的结点数总和。解法:虽然看起
  • 2024-11-12多校A层冲刺NOIP2024模拟赛21
    多校A层冲刺NOIP2024模拟赛21\(T1\)A.送信卒\(90pts/100pts\)部分分\(90pts\)设最后的可能的最短路中左右共移动了\(d\)次,上下共移动了\(x\)次。则等价于求\(\min\{x_{i}k+d_{i}\}=s\)的解,观察到\(d\in[0,\min(\left\lceil\frac{nm}{2}\right\rce
  • 2024-11-12洛谷 P1772 [ZJOI2006] 物流运输 做题记录
    很神经的一道题。令\(val_{i,j}\)表示从第\(i\)天到第\(j\)天每天都走一条道路,单次的最小花费。可以枚举\(\{i,j\}\)然后把在这个区间里的所有点设置成不可达,每一个\(\{i,j\}\)都可以用floyd算,时间复杂度\(O(n^2m^3)\)。令\(f_i\)表示第\(i\)天的最小花费,那么
  • 2024-11-112024.11.11总结
    John的农场是一张N*N的方格图,贝茜住在左上角(1,1),John住在右下角(N,N)。现在贝茜要去拜访John,每次都只能往四周与之相邻的方格走,并且每走一步消耗时间T。同时贝茜每走三步就要停下来在当前方格吃草,在每个方格吃草的用时是固定的,为H[i][j]。John想知道贝茜最少要多久才能到达Joh
  • 2024-11-11『模拟赛』NOIP2024加赛4
    Rank给我唐完了,又名,【MX-S5】梦熊NOIP2024模拟赛1。A.王国边缘好像简单倍增就做完了。由于昨天T5在我脑海中留下了挥之不去的印象,今天一上来看到这题就发现是一个内向基环树森林。然后被硬控硬控硬控,最后一个小点加一点优化就能过没调出来,挂30pts,菜菜菜菜菜。注
  • 2024-11-11差分约束的一些理解
    一般的转化不等式+建图+判断负环不加赘述图是否连通如果图不连通,那么证明约束条件并不能全部约束有两种办法解决这个问题建超级源点将每个点作为起点跑求dis的最大值/最小值对于Intervals最后考虑求\(dis\)的最大值对于LayoutG,和Capitalism最后要
  • 2024-11-09[USACO05DEC] Layout G
    算法设\(dis_i\)表示第\(i\)头奶牛的坐标题目转化为对于\(M_L\)对数对\((A_i,B_i),A_i<B_i\),使得\(dis_{B_i}-dis_{A_i}\leqD_i\)对于\(M_D\)对数对\((A_i,B_i),A_i<B_i\),使得\(dis_{B_i}-dis_{A_i}\geqD_i\)对于\((i,i+1)\),有
  • 2024-11-09CF803E Roma and Poker 差分约束
    CF803ERomaandPoker记W为\(1\),L为\(-1\),D为\(0\),前\(i\)个字符的和为\(dis_i\)。则有:当第\(i\)位为W时:\[dis_i-dis_{i-1}=1\]可以推出:\[\begin{cases}dis_i-dis_{i-1}\le1\\dis_i-dis_{i-1}\ge1\\\end{cases}\]转为差分约束形式:\[\begin{ca
  • 2024-11-09CF803E Roma and Poker 差分约束
    CF803ERomaandPoker记W为\(1\),L为\(-1\),D为\(0\),前\(i\)个字符的和为\(dis_i\)。则有:当第\(i\)位为W时:\[dis_i-dis_{i-1}=1\]可以推出:\[\begin{cases}dis_i-dis_{i-1}\le1\\dis_i-dis_{i-1}\ge1\\\end{cases}\]转为差分约束形式:\[\begin{ca
  • 2024-11-08计蒜客:骑车比赛(Dijkstra)
     学习堆优化的写法1#include<bits/stdc++.h>2usingnamespacestd;3intn,m,a,b,c;4typedefpair<int,int>pii;//first表示距离,second表示节点号5vector<pii>graph[1005];6set<pii>minHeap;7vector<int>dis(1005,INT32_MAX);
  • 2024-11-0820241015 最短路与生成树
    20241015最短路与生成树@.ThearmyofThutmoseIII题号是@,原因是过了之后才发现测不了被删了。注意到问题形如最大值最小,直接上二分答案。考虑如何check。设当前check的答案为\(x\)。容易获得一个猜想,点一定放在区间端点上。那么将区间端点离散化。记\(a_i\)表示第
  • 2024-11-08P7984 [USACO21DEC] Tickets P 题解
    题目传送门前置知识线段树优化建图|最短路解法考虑对票建虚点,从\(c_{i}\)向\(i+n\)连一条权值为\(p_{i}\)的边,然后从\(i+n\)向\([a_{i},b_{i}]\)连一条权值为\(0\)的边。建出反图后\(1\toi\)和\(n\toi\)的路径集合会有重复统计的部分,不妨以\(dis_{1,i
  • 2024-11-06IOI 2011 Race
    [IOI2011]Race题目描述给一棵树,每条边有权。求一条简单路径,权值和等于\(k\),且边的数量最小。输入格式第一行包含两个整数\(n,k\),表示树的大小与要求找到的路径的边权和。接下来\(n-1\)行,每行三个整数\(u_i,v_i,w_i\),代表有一条连接\(u_i\)与\(v_i\),边权为\(w_i\)
  • 2024-11-06AGC061E 做题记录
    link一个高级trick。考虑\(+1\)操作,他会把最低连续一段\(1\)改成\(0\),把原来第一个\(0\)改成\(1\)。注意到此时最低若干位全被覆盖为了\(0\),所以可以考虑从高位到低位划分子问题。具体的,对于第\(k\)位,\(+1\)操作对其有影响,当且仅当这一位原来是\(1\)且\(0\simk
  • 2024-11-06[USACO21DEC] Tickets P 题解
    [USACO21DEC]TicketsP首先我们思考暴力的\(O(n^2)\)怎么做。显然比起每次以\(i\)为起点跑\(n\)遍最短路,建反图后分别以\(1\)和\(n\)为起点跑两遍最短路是更加经济的方式。然后你可能会以为\(\text{dis}(1,i)+\text{dis}(n,i)\)就是答案了,之后你就会发现连样例都过
  • 2024-11-04mvc架构的简单实践----用户注册的实现
    mvc架构的简单实践----用户注册的实现蒟蒻本人今天学习了mvc三层架构,以下是使用本架构开发的一个简单的实例主线任务---案例详细1.我们要再mysql中创建一个表来存储账号密码2.本次开发使用mvc三层架构来实现,分为web层service层和dao层首先要配置环境包括目录的创建和mybati
  • 2024-11-04分层图求最短路
    分层图求最短路速度限制题目描述在这个繁忙的社会中,我们往往不再去选择最短的道路,而是选择最快的路线。开车时每条道路的限速成为最关键的问题。不幸的是,有一些限速的标志丢失了,因此你无法得知应该开多快。一种可以辩解的解决方案是,按照原来的速度行驶。你的任务是计算两地间的
  • 2024-11-03luoguP1131 时态同步
    有N个节点构成的电路树,编号为S的的节点为激发器,会产生电流并通过导线往下传递,给出电流在各边上传递递需要的时间w[i][j],可以花1个单位的代价将任意1条边的耗时加1,现要求电流同时到达所有叶子节点,求修改边的最小代价。1<=N<=5E5;1<=w[i][j]<=1E6分析:自下而上dp,对于节点x,先算出以