题意 一个 \(n\) 个点的完全图,两点之间的边权为 \((i\ xor\ j)*C\) ,同时有 \(m\) 条额外单向路径,问从 \(S\) 到 \(T\) 的最短路. \(n\leq 10^5,\ m\leq 5\times 10^5,C\leq 100\). 分析 如果没有额外的边,会直接从 \(S\) 到 \(T\) ,因为如果每个二进制位 \(i\) 不同那么一定会有一步走 \((1<< i)*C\), 如果相同也没有必要多走几个点而可能多一部分路程. 如果多了一些特殊边,最后的…
目录 @description@ @solution@ @accepted code@ @details@ @description@ 企鹅国中有 N 座城市,编号从 1 到 N . 对于任意的两座城市 i 和 j ,企鹅们可以花费 (i xor j) * C 的时间从城市 i 走到城市 j ,这里 C 为一个给定的常数. 当然除此之外还有 M 条单向的快捷通道,第 i 条快捷通道从第 Fi 个城市通向第 Ti 个城市,走这条通道需要消耗 Vi 的时间. 现在来自 Penguin Kingdom…
[题目]#6354. 「CodePlus 2018 4 月赛」最短路 [题意]给定n个点,m条带权有向边,任意两个点i和j还可以花费(i xor j)*C到达(C是给定的常数),求A到B的最短距离.\(n \leq 10^5,m \leq 5*10^5\). [算法]异或优化建图+Dijkstra 正常建边O(n^2),与其考虑特殊边的处理不如考虑优化n^2的建边方案.一个点x到另一个点y的代价是由每个改变的数位得到的,所以枚举所有点x的每个数位j,从x向\(x \ \ xor \ \ 2^j\…
目录 @description@ @solution@ @accepted code@ @details@ @description@ 请你找到 k 个不同的组合数,使得对于其中任何一个组合数 \(C_a^b\) 有 \(0\leq b\leq a\leq n\).所谓不同的组合数,即对于组合数 \(C_{a_1}^{b_1}\) 和 \(C_{a_2}^{b_2}\) ,若 \(a_1\neq a_2\) 或者 \(b_1\neq b_2\) ,则我们认为这两个组合数是不同的.问这 \(k\)…
考虑静态怎么做:枚举右边界,然后枚举上边界,对应的下边界一定单调不降,单调栈维护每一列从当前枚举的右边界向左最长空位的长度,这样是O(nm)的 注意到n>=m,所以m<=2000,可以枚举右边界,然后考虑怎么快速知道当前枚举的右边界向左最长空位的长度 用线段树维护行,每个节点都维护一段连续的列,p[ro][i]表示当i列从ro的区间最上面开始有多少行是全空的,q[ro][i]表示从下,v[ro][i]表示i列向左扩展最大的最大全空正方形的边长,大概是下面这种感觉: 然后p和q合并的时候类似HO…
$n \leq 100000$,$m \leq 500000$的有向图,两点之间还可以以$a \ \ xor \ \ b$的代价从$a$到$b$,问$s$到$t$的最短路. 被自己蠢哭QAQ 首先两个点之间不走给定的边,最短路一定是直接$s$到$t$,因为一个二进制的差异至少要被算一次.观察$s$到$t$的过程,可以把这个过程完全等价地变成:一次只改一个二进制位,代价完全不变.因此$xor$的边只用连$nlog_2(n)$条,然后就无脑最短路了. #include<stdio.h> #incl…
[LOJ#6259]「CodePlus 2017 12 月赛」白金元首与独舞 试题描述 到河北省 见斯大林 / 在月光下 你的背影 / 让我们一起跳舞吧 うそだよ~ 河北省怎么可能有 Stalin. 可是-- 可是如果 Stalin 把自己当作炸弹扔到地堡花园里来了呢? 怀揣着这份小小的希望,元首 Adolf 独自走进了花园.终有一天会重逢的吧,Stalin.或许是在此处,或许是在遥远的彼方. 无论如何,在此之前,好好装点一番花园,编排一段优美的舞步吧! 元首把花园分为 \(n\) 行 \(m\…
#6250. 「CodePlus 2017 11 月赛」找爸爸 题目描述 小 A 最近一直在找自己的爸爸,用什么办法呢,就是 DNA 比对. 小 A 有一套自己的 DNA 序列比较方法,其最终目标是最大化两个 DNA 序列的相似程度,具体步骤如下: 给出两个 DNA 序列,第一个长度为 nnn,第二个长度为 mmm. 在两个序列的任意位置插入任意多的空格,使得两个字符串长度相同. 逐位进行匹配,如果两个序列相同位置上的字符都不是空格,假设第一个是 xxx,第二个是 yyy,那么他们的相似程度由 …
Description 有 n 棵树,初始时每棵树的高度为 H_i,第 i 棵树每月都会长高 A_i.现在有个木料长度总量为 S 的订单,客户要求每块木料的长度不能小于 L,而且木料必须是整棵树(即不能为树的一部分).现在问你最少需要等多少个月才能满足订单. Input 第一行 3 个用空格隔开的非负整数 n,S,L,表示树的数量.订单总量和单块木料长度限制.第二行 n 个用空格隔开的非负整数,依次为 H1,H2,…,Hn.第三行 n 个用空格隔开的非负整数,依次为 A1,A2,…,An. Ou…
Description “无体育,不清华”.“每天锻炼一小时,健康工作五十年,幸福生活一辈子” 在清华,体育运动绝对是同学们生活中不可或缺的一部分.为了响应学校的号召,模范好学生王队长决定坚持晨跑.不过由于种种原因,每天都早起去跑步不太现实,所以王队长决定每 a 天晨跑一次.换句话说,假如王队长某天早起去跑了步,之后他会休息 a−1 天,然后第 a 天继续去晨跑,并以此类推. 王队长的好朋友小钦和小针深受王队长坚持锻炼的鼓舞,并决定自己也要坚持晨跑.为了适宜自己的情况,小钦决定每 b 天早起跑步…