01 2017 档案

摘要:L公司有N个工厂,由高到底分布在一座山上。如图所示,工厂1在山顶,工厂N在山脚。由于这座山处于高原内陆地区(干燥少雨),L公司一般把产品直接堆放在露天,以节省费用。突然有一天,L公司的总裁L先生接到气象部门的电话,被告知三天之后将有一场暴雨,于是L先生决定紧急在某些工厂建立一些仓库以免产品被淋坏。由 阅读全文
posted @ 2017-01-29 22:20 阿波罗2003 阅读(269) 评论(0) 推荐(0) 编辑
摘要:P教授要去看奥运,但是他舍不下他的玩具,于是他决定把所有的玩具运到北京。他使用自己的压缩器进行压缩,其可以将任意物品变成一堆,再放到一种特殊的一维容器中。P教授有编号为1...N的N件玩具,第i件玩具经过压缩后变成一维长度为Ci.为了方便整理,P教授要求在一个一维容器中的玩具编号是连续的。同时如果一 阅读全文
posted @ 2017-01-29 21:29 阿波罗2003 阅读(281) 评论(0) 推荐(0) 编辑
摘要:给出一个只由小写英文字符a,b,c...y,z组成的字符串S,求S中最长回文串的长度. 回文就是正反读都是一样的字符串,如aba, abba等 Input 输入有多组case,不超过120组,每组输入为一行小写英文字符a,b,c...y,z组成的字符串S 两组case之间由空行隔开(该空行不用处理) 阅读全文
posted @ 2017-01-29 20:50 阿波罗2003 阅读(155) 评论(0) 推荐(0) 编辑
摘要:A DNA sequence consists of four letters, A, C, G, and T. The GC-ratio of a DNA sequence is the number of Cs and Gs of the sequence divided by the leng 阅读全文
posted @ 2017-01-26 22:36 阿波罗2003 阅读(860) 评论(0) 推荐(0) 编辑
摘要:莫队算法(由莫涛发明的)是一种离线的暴力算法(至少我这么认为)。使用莫队算法的条件是,知道一个区间[l, r]的结果,那么也可以快速知道[l + 1, r],[l - 1, r], [l, r - 1], [l, r + 1]这四个区间的结果。于是可以想到,直接通过这样转移来解决一些问题。当然有些出 阅读全文
posted @ 2017-01-25 22:20 阿波罗2003 阅读(776) 评论(0) 推荐(0) 编辑
摘要:You are working for Macrohard company in data structures department. After failing your previous task about key insertion you were asked to write a ne 阅读全文
posted @ 2017-01-24 21:50 阿波罗2003 阅读(238) 评论(0) 推荐(0) 编辑
摘要:很简单的一道最短路问题。分情况处理赛道的打开和关闭。 Code 阅读全文
posted @ 2017-01-23 21:54 阿波罗2003 阅读(377) 评论(0) 推荐(0) 编辑
摘要:树链剖分可以算是一种数据结构(一大堆数组,按照这个意思,主席树就是一大堆线段树)。将一棵树分割成许多条连续的树链,方便完成一下问题: 前两个内容可以用其他方式解决,但是下面两种操作倍增、st表,dfs序就很难解决(解决当然可以解决,只是耗时长点而已)。下面开始步入正题。 树链剖分的主要目的是分割树, 阅读全文
posted @ 2017-01-23 21:35 阿波罗2003 阅读(314) 评论(0) 推荐(0) 编辑
摘要:第一题就LCA即可。不过推荐用Tarjan(最快,常数很小)。然后Tarjan的时候顺便就出一个dist[i],表示i节点到根节点的距离。求出了LCA,那么两点间的距离就为dist[u] + dist[v] - 2 * dist[lca]。 Code 1 #include<iostream> 2 # 阅读全文
posted @ 2017-01-22 21:57 阿波罗2003 阅读(198) 评论(1) 推荐(0) 编辑
摘要:1#树上倍增 以前写的博客:http://www.cnblogs.com/yyf0309/p/5972701.html 预处理时间复杂度O(nlog2n),查询O(log2n),也不算难写。 2#st表(RMQ) 首先对一棵树进行dfs,得到欧拉序列,记录下每个节点的第一次出现位置。 (先序遍历这棵 阅读全文
posted @ 2017-01-22 21:37 阿波罗2003 阅读(390) 评论(0) 推荐(1) 编辑
摘要:替罪羊树是不通过旋转而是重构来维护节点平衡的一种平衡树。当某一棵子树的节点总数超过其父节点的一定时,就进行重构操作。 目录 节点定义 重构操作 插入操作 删除操作 其他各种操作 完整代码&总结 目录 节点定义 为了判断是否需要重构,所以需要加入cover(实际节点个数)域。这次直接加入可重操作,所以 阅读全文
posted @ 2017-01-18 22:07 阿波罗2003 阅读(693) 评论(0) 推荐(0) 编辑
摘要:因为只用两种颜色,所以相邻的省市的颜色一定相反,然后dfs/bfs就可以了。注意图可能不会联通。 Code 随便跑一遍最短路,注意加上抄书的时间。(包括结束的点) Code 首先用bfs把联通块求出来。然后给每个联通块附一个编号,接着按这个编号排序。(分出了所有联通块) 弄出来然后就可以考虑dp。用 阅读全文
posted @ 2017-01-17 17:53 阿波罗2003 阅读(338) 评论(1) 推荐(0) 编辑
摘要:作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿。终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命…… 具体来说,小Z把这N只袜子从1到N编号,然后从编号L到R(L 尽管小Z并不在意两只袜子是不是完整的一双,甚至不在意两只袜子是否一左一右,他却很在意 阅读全文
posted @ 2017-01-17 08:14 阿波罗2003 阅读(289) 评论(0) 推荐(0) 编辑
摘要:1861: [Zjoi2006]Book 书架 Description 小T有一个很大的书柜。这个书柜的构造有些独特,即书柜里的书是从上至下堆放成一列。她用1到n的正整数给每本书都编了号。 小T在看书的时候,每次取出一本书,看完后放回书柜然后再拿下一本。由于这些书太有吸引力了,所以她看完后常常会忘记 阅读全文
posted @ 2017-01-15 21:05 阿波罗2003 阅读(202) 评论(0) 推荐(0) 编辑
摘要:3223: Tyvj 1729 文艺平衡树 Description 您需要写一种数据结构(可参考题目标题),来维护一个有序数列,其中需要提供以下操作:翻转一个区间,例如原有序序列是5 4 3 2 1,翻转区间是[2,4]的话,结果是5 2 3 4 1 您需要写一种数据结构(可参考题目标题),来维护一 阅读全文
posted @ 2017-01-15 20:21 阿波罗2003 阅读(172) 评论(0) 推荐(0) 编辑
摘要:Splay树,又叫伸展树,可以实现快速分裂合并一个序列,几乎可以完成平衡树的所有操作。其中最重要的操作是将指定节点伸展到指定位置, 目录 节点定义 旋转操作 伸展操作 插入操作 删除操作 lower_bound&upper_bound 前驱后继操作 可重Splay 名次操作 区间操作 目录 节点定义 阅读全文
posted @ 2017-01-15 10:41 阿波罗2003 阅读(605) 评论(0) 推荐(0) 编辑
摘要:[写在前面的话] 如果想学Treap,请先了解BST和BST的旋转 二叉搜索树(BST)(百度百科):[here] 英文好的读者可以戳这里(维基百科) 自己的博客:关于旋转(很水,顶多就算是了解怎么旋转,建议自行上百度)[here] Treap(= binary search Tree + Heap 阅读全文
posted @ 2017-01-14 09:28 阿波罗2003 阅读(768) 评论(0) 推荐(0) 编辑
摘要:vjudge传送门[here] 题目大意:给一个有(3≤v≤1000)个点e(3≤e≤10000)条边的有向加权图,求1~v的两条不相交(除了起点和终点外没有公共点)的路径,使权值和最小。 正解是吧2到v-1的每个点拆成两个点,中间连一条容量为1,费用为0的边,然后求1到v的流量为2的最小费用流就行 阅读全文
posted @ 2017-01-12 17:43 阿波罗2003 阅读(159) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示