摘要:
概率生成函数g(x)=∑i≥0tixi,ti表示结果为i的概率 令f(x)表示i位表示串结束时长度为i的概率,G(x)表示i位表示串长度为i时不结束的概率 有如下关系 ①:f(x)+g(x)=1+g(x)x 意义:f(x)+g(x)即为串 阅读全文
摘要:
"「CTSC2010」产品销售" 30pts的费用流都会吧... 100pts只要模拟费用流就行了,是不是很简单呀( 咕咕咕 令Mi表示i1→i的正向边,M′i表示反向边 Ci表示i→i1的正向边,C′i表示反向边 依次枚举$1,\cdo 阅读全文
摘要:
30pts 令(为1,)为 1; 暴力枚举每个点为起始点的路径,一条路径是合法的当且仅当路径权值和为0且路径上没有出现过负数。 将所有答案算出。 100pts 使用点分治。 要求知道经过重心root的路径,这里默认把root当做树的根。 经过root的路径(x,y)分为两种: 1. root是 阅读全文
摘要:
「JOI 2014 Final」飞天鼠 显然向上爬是没有必要的,除非会下降到地面以下,才提高到刚好为0。 到达一个点有两种情况:到达高度为0和不为0。 对于高度不为0的情况,显然花费的时间越少高度越高(每下降1m都要1单位时间),而必然高度越高越好,因此只需求花费的最少时间。 对于高度为0的情况,显 阅读全文
摘要:
"「JOISC 2014 Day1」巴士走读" 将询问离线下来。 从终点出发到起点。 由于在每个点(除了终点)的时间被过来的边固定,因此如果一个点不被新的边更新,是不会发生变化的。 因此可以按照时间顺序,依次提高终点的时间,然后跑dijkstra(记得把访问标记回滚清空掉)。 每条边被跑过了就不再跑 阅读全文
摘要:
NOIP2017 普及组题目大融合 每个读者需要有某个后缀的书,可以暴力map,复杂度o(9nlog(n)),也可以反串建trie树,复杂度o(9n)。 故可以求出需要的最少的RMB数目。 显然直接求花费金币的最小值是不容易的,那么可以二分最小值。 问题变为判断性的了。 实际上S就等于一 阅读全文
摘要:
「NOI十联测」深邃 要使得最大的连通块最小,显然先二分答案。 先固定1结点为根。 对于一个果实,显然是先处理子树中未分配的点,再向外延伸。 每个结点记录一个si[],表示子树中未分配的点数,若为负数,则绝对值代表可以向外延伸的点数。 对于每一个结点i: 统计儿子中可以向外延伸的点数的最 阅读全文
摘要:
"「BalkanOI 2018 Day1」Election" 记C为1,T为 1,sum[i]为i点的前缀和。 对于询问[l,r],分两步计算答案。 1. 要求所有点的sum[i]sum[l1]≥0,那么就把一些点拔高,需要删去的点数为$max(sum[l 1] sum 阅读全文
摘要:
"「BalkanOI 2018 Day1」Minmaxtree" 每个点都有一个最大和最小权值的限制。 然后每一个权值的限制都必须要取到。 每个点显然可以直接让他取到最大或最小权值。 可以想到每个点匹配一个权值。 不就是一个二分图吗。。。 每个点连向最大和最小权值,然后跑dinic,输出方案,当然本 阅读全文
摘要:
"「BalkanOI 2018 Day2」Parentrises" part1 显然可以直接贪心。 右括号记 1,左括号记1。 默认起始全部绿色,不染色。 策略如下: 1. 从左往右扫,如果右括号个数大于左括号,那么去除目前未被染色的且在最前面的两个右括号(染成红,蓝色)。(如果没有无解)。 2. 阅读全文