把博客园图标替换成自己的图标
把博客园图标替换成自己的图标end
摘要: 题面传送门 题解里居然没有对这个东西复杂度严格证明的,我来补一发。 首先暴力$O(n^2)$不再赘述。 可以加上一些剪枝,如果我们对于每个$i$倒序枚举每个$j$,那么如果$a_j|a_{j+1}|⋯|a_i=a_j|a_{j+1}|⋯|a_$,那么就不用往下枚举,因为接下来的一定与前一个所枚举的相 阅读全文
posted @ 2021-01-02 20:19 275307894a 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 题面传送门 数据这么小,显然要网络流。 从源点向每个菜连$1$边,从每个饮料向终点连$1$边。 为了保证每头牛只被算一次,所以对每头牛拆点。 其余照常即可。 代码实现: #include<cstdio> #include<cstring> #include<queue> #define beg(x) 阅读全文
posted @ 2021-01-02 20:05 275307894a 阅读(56) 评论(0) 推荐(0) 编辑
摘要: 题面传送门 还是分治。 考虑建出一棵线段树,每个节点分成$l$到$mid$的后缀线性基和$mid+1$到$r$的前缀线性基,查询推到不能再推时两个线性基合并即可。 时间复杂度$O((n+q)log^2n)$ 代码实现: #include<cstdio> #include<cstring> using 阅读全文
posted @ 2021-01-02 19:15 275307894a 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 题面传送门 一句话题面:区间01背包。 这种东西可以用分治解决掉。 发现如果完全合并两个dp状态是$O(t^2)$的,但是如果只是针对某一个值的合并只是$O(t)$的。所以这题中不能进行合并状态。 预处理线段树上每个节点$l$到$mid$与$mid+1$到$r$的两部分$dp$状态。 在一棵线段树上 阅读全文
posted @ 2021-01-02 18:24 275307894a 阅读(92) 评论(0) 推荐(0) 编辑
浏览器标题切换
浏览器标题切换end