10 2018 档案
摘要:题目大意:给你$n$个箱子,每个箱子里有$a_{i}$个花,你最多取$s$个花,求所有取花的方案,$n<=20$,$s<=1e14$,$a_{i}<=1e12$ 容斥入门题目 把取花想象成往箱子里放花,不能超过箱子上限 $n$很小,考虑状压 如果去掉$a_{i}$的限制,我们取物品的方案数是$C_{
阅读全文
摘要:题目大意:给你一个边权为$1$的无向图,构造出所有$1$为根的最短路树并输出 性质:单源最短路树上每个点到根的路径 ,一定是这个点到根的最短路之一 边权为$1$,$bfs$出单源最短路,然后构建最短路树即可 代码实现需要思考 可以用$vector$记录最短路树中,每个点可能的父亲,对于合法父亲数量$
阅读全文
摘要:题目大意:给你一个序列,求满足$x_{i}\: xor\; x_{j}$在二进制下1的数量为奇数的数对数量 打月赛的时候真没想出来,还是我太弱.. xor意义下,对于两个数,假设它们两个每一位都是2个0,或者一个1一个0,那么xor之后的数中1的数量是直接相加 如果有同一位有2个1,两个1xor会变
阅读全文
摘要:题目大意 :给你一个整数序列,定义一个合法子串为子串内所有数互不相同,会有很多询问,求区间$[L,R]$内最长连续合法子串长度 一道思维不错的$RMQ$题,NOIP要是考这种题可能会考挂一片 预处理出$f_{i}$数组表示以i结尾的最长子串的起始位置,需要一个辅助$last$数组,表示某个数上一次出
阅读全文
摘要:题目大意:给你一棵边权为1的树,让你加入一些边,使得根节点(1号节点)到其他节点的最短距离不大于2 并没有想到贪心...... 正解的贪心思路是这样的 用一个堆维护当前距离最远的点,然后把根节点和它的父节点连起来 这样,父节点周围一圈的节点到根的距离都不大于2,把这些节点都从堆里删除 实际操作的时候
阅读全文
摘要:题目大意:给你一个有向连通图,让你找出一个点集,保证点集内的点之间没有直接连边,且集合中存在一点,到一个 非点集中的点的距离小于等于2 思路很清奇 首先编号从小到大遍历每个点,如果这个点没有被访问过,把它加入集合中,再把和它的出边连接的点都标记为访问过, 如此做,会发现集合内的点到集合外的点距离最大
阅读全文
摘要:题目大意:你可以在第$ai$天或者第$bi$天进行第$i$场考试,每天最多进行一场考试,求把所有考试都考完的最早结束时间 由于天数可能很大,需要离散 把问题抽象成一棵树,每个点最多被"分配"一条边,现在要删点 画画图可以发现 如果一个联通块是一棵树,那么可以删去至多一个点 如果一个联通块是一个单环树
阅读全文
摘要:题目大意:一共有n个人,每天早上会有两个人成为朋友,朋友关系不具有传递性,晚上,它们会组织旅游,如果一个人去旅游,那么他不少于$k$个朋友也要和他去旅游,求每天的最大旅游人数 一开始并没有想到反向建图,并查集搞了好久也没出解,看了题解的思路,大概是这样的 转化问题,反向建图,把正序往图里建边换成每次
阅读全文
摘要:题目大意:让你构造一个括号序列,括号匹配的方式类似于栈,给出从左数每个括号 到和它匹配的右括号的 最小和最大距离,让你输出一个合法括号序列 看错题了以为是二分图,然后写了搜索 贪心发现如果距离往小了填,不会影响结果 括号必须套完整的括号,所以距离必须是2的整数倍+1 如果一个括号匹配上了,那么两个括
阅读全文
摘要:题目大意:给你一棵树,让你对叶节点分组,保证每组中,任意两个叶节点之间的距离不大于K,求最小的组数 手动yy的贪心竟然对的 对于每个节点,维护一个$ma[i]$,表示在$i$节点的子树内 未被分组的叶节点到$i$节点的最长距离 那么,对于每个节点,把它的子节点按照$ma[i]$排序,那么如果这个点的
阅读全文
摘要:题目大意:一个无向连通图,n个点m条边,n<=1e5,m-n<=20,q个询问,q<=1e5,求u和v之间的最短路 发现边只比点多20个,所以可以把图当成一棵树,求出图的最小生成树 对于一个询问,最短路径可能是两个点的树上最小距离,但最短路径也有可能经过未被加入最小生成树的边 那怎么办呢? 发现m-
阅读全文
摘要:题目大意:已知B的范围,求a1x1+a2x2+...+anxn==B存在非负正整数解的B的数量,N<=12,ai<=1e5,B<=1e12 同余最短路裸题 思想大概是这样的,我们选定一个最小的$ai$,让其他的数用最小的代价去拼凑取余a1之后的数,这其实可以看成求最短路的过程 想象图中有amin个点
阅读全文
摘要:题目大意:略 网上各种神仙做法,本蒟蒻只想了一个离线+并查集的做法 对所有靴子按最大能踩的深度从大到小排序,再把所有地砖按照积雪深度从大到小排序 一个小贪心思想,我们肯定是在 连续不能踩的地砖之前 的一个位置开始跳,如果这都不能跳过这一段连续的坏地砖,说明这个靴子肯定不能用 那么离线靴子以后,会发现
阅读全文
摘要:题目大意:有一只狐狸从给定的S点开始逃跑(出发),向叶节点移动以逃离这棵树,叶节点可能出现农民去抓捕狐狸,当农民和狐狸出现在同一个节点的时候,狐狸会被抓住,农民和狐狸移动速度相同,求抓捕狐狸所需要的最少农民数 显然,当 u 节点的子树内存在一叶节点 i 满足deep[i]-deep[u]<=deep
阅读全文
摘要:EXBSGS模板 我之前把有一处b和c弄反了,有点困...然后调了半天 (exbsgs比excrt简单多了) 求x的最小正整数解 原式子拆成 在bsgs中,保证a,b互质,这样求出的逆元挪过去才对 但exbsgs中并不保证,所以必须不断取gcd(a,b)保证a,c互质 令n为不断求gcd的总次数 接
阅读全文
摘要:题目大意:给你一个无序的1~n的排列a,每次询问[l,r]之间任取两个数得到的最大gcd是多少 先对所有询问离线,然后把问题挂在区间的左端点上(右端点也行) 在预处理完质数,再处理一个next数组,表示 i 的任意一个质因子,这样我们分解质因数的时间降低到而不是 因为能对答案产生贡献的都是成对出现的
阅读全文
摘要:题目大意:给你一个序列,让你对它重新排列,保证a[i]<=a[i/k],求字典序最大的排列 洛谷传送门 把i/k和i连边,发现形成了一个类似于小根堆的树形结构 先是一个错误的贪心:贪心每次选择前size[x]大个数依次填到树里 这种方法在有重复数字的时候会出锅,比如1112,如果用上面
阅读全文
摘要:题目大意:给你一个n*m棋盘(n,m<=200),有一个人从给定的点s,e出发,有一些坏点不能走,一共给定k段连续的时间(k<=200),在某一段时间之内它只能向一个给定的方向移动,在某一时刻,它可以移动或者不移动。求碰到坏点之前/总时间结束时,最长移动的距离。 朴素DP的方法是: 表示在时间点t时
阅读全文
摘要:题目大意:给你n个1和m个0,你要用这些数字组成一个长度为n+m的串,对于任意一个位置k,要保证前k个数字中1的数量大于等于0的数量,求所有合法的串的数量 答案转化为所有方案数-不合法方案数 所有方案数显然是 现在比较易懂的解法是转化进坐标系 从(0,0)开始,填1视为向右上↗走,填0视为向右下↘走
阅读全文
摘要:1.线性筛逆元 2.快速乘 3.excrt 4.exlucas 5.杜教筛 6.矩阵求逆在当前矩阵右侧补上一个等大的单位矩阵,然后跑高斯消元,右侧剩下的矩阵就是逆矩阵 高斯消元的思想比较简单,每次把第$i$列中的某一行$j$上的数$a_{ji}$变成1,然后根据等式的性质,把第$j$行后面的元素都除
阅读全文
摘要:1.错位排序: 错位排序数列:1,2,9,44,265...... 给出一个1~n的排列,现在把它打乱,让每一位上的数和它的标号都不相同,求所有的打乱方案数 考虑1~n的全排列的数量,是 那么,当某一位上的数和它的标号相同(其他位是否相同先不考虑)的情况,那么打乱方案数是 可以看错把这一位去掉,剩下
阅读全文
摘要:题目大意:给你一个n*m的棋盘,有一些坏点不能走,你有很多军队,每支军队可以像象棋里的马一样移动,不过马是1*2移动的,而军队是r*c移动的,军队只能从上往下移动,如果一个点已经被一直军队经过,那么其他军队不能再经过这个点,求覆盖所有非坏点的最少军队数 洛谷P2172传送门 对在某个点的军队可能跳的
阅读全文
摘要:题目大意:给你一个无向联通图,节点数n<=1000。聪聪有一个机器人从C点出发向在M点的可可移动,去追赶并吃掉可可,在单位时间内,机器人会先朝离可可最近的节点移动1步,如果移动一步机器人并不能吃掉可可,那机器人会再向可可的方向移动一格,如果有两个节点到可可的距离相等,那机器人会移动到编号较小的一个节
阅读全文
摘要:题目大意:给你一个序列(n<=35000),最多分不大于m块(m<=50),求每个块内不同元素的数量之和的最大值 考试的时候第一眼建图,没建出来,第二眼贪心 ,被自己hack掉了,又随手写了个dp方程,感觉可以用splay维护,发现有区间操作并可取,又发现这个方程只能用线段树维护,然后只剩40min
阅读全文
摘要:题目大意:略 傻了吧唧的我wa了好几次 我的模拟功底真的不咋地 linux下用gets会报错,我用的fgets
阅读全文

浙公网安备 33010602011771号