随笔分类 - 题解
摘要:今天想做做图论,于是点开了这道题。。。。(是二分图染色然而我没看出来) 四种操作及条件: 1. s1.push() 需满足 待push的元素小于栈顶 && { 若在原序列中,待push元素的后面存在一个比 待push元素大 且比 s2.top() 大的元素,记为a ,那么显然在a被push以前,待p
阅读全文
摘要:先二分答案,再跑最短路,跑的时候遇到 过路费超过二分的答案的 就不拿他更新最短路 2019.04.14
阅读全文
摘要:刚学了匈牙利正好练练手(我不会说一开始我写错了)(怕不是寒假就讲了可是我不会) 把人看做左部点,床看作右部点 建图:(!!在校相当于有床,不在校相当于没有床 但是要来学校) 1.在校的 不走的人 自己和自己的床连边; 2.不在校的人或在校不回家的人 和 认识的 并且 在校的人 的床 连边; 于是统计
阅读全文
摘要:想了半天式子。。。最后在邓大师的帮助下想出此题。。。。QWQ我还是太菜了 对于一个非割点,ans+=2*(n-1); 对于一个割点,ans+= 2019.04.12
阅读全文
摘要:辣鸡错误:把dfs和ldfs搞混。。。QAQ 题意:给定一个无向图,然后查询q次,求每次查询就在图上增加一条边,求剩余割边的个数。 先把边双缩点,然后预处理出LCA的倍增数组; 然后加边时,从u往上跳,把所有u到LCA(u,v)路径上割边去掉,即 --ans;v同理; 而向上跳的时候可以用并查集,把
阅读全文
摘要:又来了个维护方差的线段树。。。。 大致推导过程(字丑多包涵QAQ) 注意取模时要加一些100000007防止出现负数。。 也可树状数组,就不多说了(自己没写)(怕是树状数组更易写?) 2019.04.12
阅读全文
摘要:块内按右端点sort,块外按左端点sort 话说我刚开始这么修改。。。 十分暴力?没事不影响复杂度。。 后来看题解发现可以改成这样 十分简练?我数学太菜了。。。 2019.04.12
阅读全文
摘要:欧拉回路。 入度为奇数的点,搜他。 最好邻接矩阵。。。 2019.04.11
阅读全文
摘要:%%%暴搜出奇迹%%%@SiriusRen 其实我刚开始题读错了,才导致我写图论。。。 spfa跑最短路,开一个node记录状态(pair当然滋磁):所在楼层和槽的位置 以层数为1,槽在0的位置 为初始状态并进队,向每一个合法位置扩展,跑spfa,直到收敛。 2019.04.11
阅读全文
摘要:考试时先拿vector瞎搞不等信息,又没离散化,结果好像MLE;后来想起课上讲过用set维护,就开始瞎搞迭代器。。。QWQ我太菜了。。 用并查集维护相等信息,用set记录不相等的信息: 如果要求变量不等,若不和并查集矛盾,就拿set互相记录一下,YES;矛盾就NO 如果要求变量相等, 1.x记录的不
阅读全文
摘要:就是个区间DP。。。考试时想了很久。。。 [ i , j ]至少要涂f [ i ] [ j ] 次颜料,于是两个端点相等,直接忽略掉一个取min 否则区间DP,枚举分割点 2019.04.11
阅读全文
摘要:因为开根号能使数字减小得非常快 所以开不了几次(6次?)很大的数就会变成1..... 所以我们可以维护区间最大值,若最大值>1,则继续递归子树,暴力修改叶节点,否则直接return (好像也可以维护区间被开方的次数,但我不会。。。QAQ) upd 2019.06.15 可以用树状数组做,如果这个数已
阅读全文
摘要:https://www.cnblogs.com/Jackpei/p/10680710.html
阅读全文
摘要:好吧我太菜了又调了一晚上。。。QAQ 先跑出最小生成树,标记树边,再用树上倍增的思路,预处理出: f[u][i] :距离u为2^i的祖先 h[u][i][0/1] :距u点在2^i范围内的最长边和次长边 然后枚举每一条非树边(u,v),会与原先的最小生成树构成一个环,而之前预处理出的数据可以快速找到
阅读全文
摘要:贪它,再大力DP(话说觉得此题简单的真的是大佬QAQ)我想了两天。。。QWQ 贪心:吃饭慢的先打饭(不太会证。。。) DP:f[i][j]表示前i个人,在1号窗口打饭的总时间时j,的最短时间 确定i的时候,通过j,可以算出在二号窗口打饭的总时间。。 所以有: 第i个人在1号窗口:if(j>=a[i]
阅读全文
摘要:错是被学长挑出来的。。。QWQ@Monster_Yi f[i][j][0/1] 为 第i天,换j次,换1/没换0 然后大力DP 2019.04.07
阅读全文
摘要:树状数组帅炸了。。。。又被一道水题轻虐,又被学长指出了一个错误。。。。我太菜了QAQ 开两个树状数组,一个记录左端点,一个记录右端点; 共有cnt(总数) - (<l的右端点数目) - (>r的右端点数目) 种地雷 2019.04.07
阅读全文
摘要:题意很简明吧? 枚举的矩形下边界和右端点即右下角,来确定矩形位置; 每一个纵列开一个单调队列,记录从 i-n+1 行到 i 行每列的最大值和最小值,矩形下边界向下推移的时候维护一下; 然后在记录的每一列的最大值和最小值上,跑滑动窗口,即用单调队列维护区间 [ j-n+1 , j ] 的最大值和最小值
阅读全文
摘要:好久不做DP了。。。 题意:求原串通过删除和添加某些字符构成回文串的最小代价 设f[i][j]表示i到j位匹配的最小代价,那么有 其中vl[char][0/1]表示添加或删除char 的代价 2019.04.06
阅读全文
摘要:就是堆+链表,十分像 数据备份 对吧? 把相邻的正数和相邻的负数合并成一整个正数块和负数块,最后只剩一些交替相间的正块与负块了吧? 显然,正块的个数<=m时,全部选走就获得了最大权值,否则我们可能需要选一些负块来获得最优解。 然而弱不经风的我调了四个小时链表和预处理QAQ。。。 千万不要犯此种错误:
阅读全文

浙公网安备 33010602011771号