10 2018 档案
摘要:"传送门" 这题为什么要用二分呢?/huaji 首先可以$O(n)$预处理出从某个物品$i$开始放,只放一个盒子,能放的最后物品的位置$j$,只要用两个指针维护左右端点,每次移动一下左端点同时尽量把右端点右移救星了 然后我们要放的所有物品是原来的一个后缀,所以要从后往前放,~~但是直接贪心放是错的~
阅读全文
摘要:"传送门" 推荐去 "bzoj" 看个视频了解一下 ~~不要妄想视频直接告诉你题解~~ ~~但是视频告诉了你后面要用的东西~~ 首先我们要求的是$x^2+y^2=n^2(x,y\in Z)$的$(x,y)$对数,可以转化成$x^2+y^2=n^2(x 0,y\ge0,x,y\in Z)$的$(x,y
阅读全文
摘要:"传送门" 边数只有5000,可以考虑$O(m^2)$算法,即把所有边按边权升序排序,然后依次枚举每条边$i$,从这条边开始依次加边,加到起点和终点在一个连通块为止.这个过程可以用并查集维护.那么以$i$这条边为最小边的合法路径,最大值最小的边就是最后加进去的边,这时用这两个边权更新答案即可 可以加
阅读全文
摘要:"传送门" 第一问是一道经典的二分,二分答案$ans$,然后从前往后扫,判断要分成几段救星了 第二问设$f_{i,j}$表示前$i$个数分成$j$段,每段之和不超过第一问答案的方案,转移就是从$f_{k,j 1}(k define LL long long define il inline defi
阅读全文
摘要:"传送门" 我们发现整个大置换中,会由若干形如$(a_1\rightarrow a_2,a_2\rightarrow a_3,...a_{n 1}\rightarrow a_n,a_n\rightarrow a_1)$的循环置换组成,记某个循环置换中元素个数为$m_i$而整个置换的循环节大小为$lc
阅读全文
摘要:"传送门" 考虑因为每个人的蛋糕体积要相等,如果切了一刀,那么要使得分当前蛋糕的人根据分成的两部分蛋糕的体积分成两部分人,所以假设当前有n人,切的这一刀要是在x或y的$\frac{k}{n}(k\in N_+,k\in [1,n])$处,然后两边分别有$k$和$n k$个人分,所以分治做下去救星了
阅读全文
摘要:"传送门" 单调队列优化dp板子 表示不大想写详细做法,自己看代码吧qwq (懒) 注意细节~~,不然就会跟我一样WA4次~~
阅读全文
摘要:"传送门" 首先,一定要把所有点遍历一遍,这时答案应该是$\frac{\sum 某个点第一次被遍历的时间点}{n 1}\quad$,而且每条边只能走两次,所以每次要遍历完某棵子树才能遍历其它子树。 考虑每次先递归处理子树,记$f_x=\sum x子树内某个点第一次被遍历的时间点,g_x=w_{x,f
阅读全文
摘要:"传送门" $n$很小,可以想到设$f_{i,j}$为第$i$轮,获得的物品集合为$j$的答案,然后顺推 恭喜你很可能会WA,因为这样可能会有些状态无法到达,而难以计算答案 概率期望是可以逆推的,那么$f_{i,j}$为第$i$轮及之前获得的物品集合为$j$,$i$后面的最大期望得分,转移就枚举每个
阅读全文
摘要:"传送门" $$\sum_{i=1}^{n}\gcd(i,n)$$ 考虑枚举所有可能的gcd,可以发现这一定是$n$的约数,当$\gcd(i,n)=x$时,$gcd(\frac{i}{x},\frac{n}{x})=1$,可以知道gcd为$x$的数的个数就是$\varphi_{\frac{n}{x}
阅读全文
摘要:"传送门" 似乎可以按边权排序后二分图匹配 这里给一个复杂度稳定的算法 把一个公主能匹配的两个点连边,然后依次加边,每当加到一个大小为$n$的连通块中有$n$条边之后,这时形成了基环树,将这些边定向,可以使得每个点入度均为1,也就是每个点都有合法匹配(对于一棵树,有$n 1$条边,它们所代表的匹配也
阅读全文
摘要:"传送门" 对于每个二进制位考虑有多少区间和这一位上为1 从前往后扫每个前缀和,如果当前这个前缀和某一个二进制位上为1,因为区间和由这个前缀和减去前面的前缀和得来,如果减去了这一位为0的前缀和,那么 减去的前缀和的 比这一位更小的位 组成的数 要小于等于 当前前缀和 比这一位更小的位 组成的数,区间
阅读全文
摘要:"传送门" 题意:$n$个位置,每个位置有价值$v_i$和重量$p_i$,要选出一些位置,如果要选位置$i$,那么前面选的重量之和要为$l_i$,后面选的重量之和要为$r_i$,求一个方案使得价值和最大 这个限制很舒服,可以设$f_i$为从前面开始选,选第$i$个的最大价值,转移枚举前面的$j$,如
阅读全文
摘要:"传送门" 可以枚举两个点然后计算答案,至于是否合法,就要看可不可以通过移不超过$t$个箱子使得两点连通,也可以看做找一条路径使得路径上的1个数不超过$t$ 所以可以考虑最短路,相邻的点两两连边,如果边的末端是1,那么边权为1,否则为0,再对每个点求单源最短路,注意初始距离为点上的数字(0/1) 最
阅读全文
摘要:"传送门" 题意,给一棵树,每次给两个点$x,y$,求$\max_{i=1}^{n}(\min(di_{x,i},di_{y,i}))$ ~~看std看了好久~~ 以下是一个优秀的在线做法,$O(nlogn)$预处理,每次询问可以做到$O(1)$ 首先把直径扣出来,然后就可以把整棵树看成一条直径上挂
阅读全文
摘要:"传送门" 跟 "国王游戏" 一样的分析 考虑相邻的两个大臣,设他们前面的$\sum a_j$为$s$,同时注意到后面人的贡献更大 所以$i$在前面时,$c_j=\max(\max(c_{last},s+a_i)+b_i,s+a_i+a_j)+b_j$ $j$在前面时,$c_i=\max(\max(
阅读全文
摘要:"传送门" 代码极短 $O(n^2)$dp是设$f_{i,j,k}$表示前$i$位,放了$j$个1,后面还可以接着放$k$个0的方案,转移的话,如果放0,$k$就要减1,反之放了1,后面可以多放一个0,所以$k$加1,即$$f_{i+1,j,k 1}+=f_{i,j,k}$$$$f_{i+1,j+1
阅读全文
摘要:"传送门" 因为一个木板可以切掉最多$m$,所以可以先预处理哪些长度的木板可用,开个桶,然后对$[l m,l]$打标记,再把打了标记的数取出来 假设可用长度$a_1,a_2,,,a_n$从小到大排好了序,我们可以先不用$a_1$,只用后面的长度拼,然后用$a_1$凑,所以设$di_i$为能用后面的凑
阅读全文
摘要:"传送门" 单串匹配显然用$kmp$ 一个暴力的dp是设$f_{i,j}$,表示前$i$位, 正在匹配 给定串第$j$位的方案,转移就枚举下一位放什么,然后使用$kmp$看会匹配到给定串的哪位 但是$n$非常大,注意到$f_{i,j} f_{i+1,k}$这样的转移可以抽象为一条从$j$到$k$的边
阅读全文
摘要:"传送门" 异或最大值应该是要用$trie$树,从高位往低位贪心,虽然这里询问区间的数都要加上$x$,但是仍然可以利用这个思想 从高往低位考虑,我们要找一个加上$x$后当前二进制位$j$不等于$b$的当前位的数,假设$b$当前位为0,我们就要现在找个数加上$x$后当前位$j$为1,记之前选出的数为$
阅读全文
摘要:"传送门" ~~编号好评~~ 先把所有数记个前缀和,然后对于某一个右端点$r(r\geq L)$,能计入答案的$l$的范围为$[\max(r R,0),r L]$ 可以开一个大根堆,先对于所有右端点$r$,加入$pre_r \min(pre_{l})$,然后每次取出堆顶加入答案,弹掉堆顶,同时如果这
阅读全文

浙公网安备 33010602011771号