摘要: Description 多年之后,worldwideD厌倦竞争,隐居山林。 他的家乡开始发展起了旅游业,在一条很长的主干道上,有N个旅游景点,按顺序编号为1到N。根据游客们网上的评分,第i个景点有一个评估值a[i],为了区分开不同的景点,评估值是两两不同的。 今天有M组游客前来旅游,第i组游客选择遍 阅读全文
posted @ 2017-08-09 07:23 ~Lanly~ 阅读(411) 评论(2) 推荐(0) 编辑
摘要: Description Description Input 输入文件名为lipschitz.in。第一行一个整数n。接下来一行n个整数,描述序列A。第三行一个数q 。接下来q行,每行三个整数。其中第一个整数type表示操作的类型。 type=0对应修改操作, type=1对应查询操作。 Output 阅读全文
posted @ 2017-08-07 22:04 ~Lanly~ 阅读(219) 评论(0) 推荐(0) 编辑
摘要: Description 对于一个1->n的排列 ,定义A中的一个位置i是好的,当且仅当Ai-1>Ai 或者Ai+1>Ai。对于一个排列A,假如有不少于k个位置是好的,那么称A是一个好的排列。现在有q个询问,每个询问给定n,k,问有多少排列是好的。答案对10^9+7取模。 Description 对于 阅读全文
posted @ 2017-08-07 19:40 ~Lanly~ 阅读(266) 评论(0) 推荐(1) 编辑
摘要: Description 有一个外星人控制了你的大脑。一开始你处于原点(0,0)。外星人有一个由(R,U,D,L)组成的长度为M 的操作序列,分别代表(右,上,下,左)。平面上有N 个关键点,每当外星人给出一个操作,你需要在这个方向上找到最近的一个关键点,并走到那个点上。保证输入数据合法。上图为第三个 阅读全文
posted @ 2017-08-07 19:20 ~Lanly~ 阅读(356) 评论(0) 推荐(0) 编辑
摘要: Description Description Input 输入文件名为seq.in。首先输入n。接下来输入n个数,描述序列 A。 Output 输出文件名为seq.out。输出一行一个整数代表答案。 Input 输入文件名为seq.in。首先输入n。接下来输入n个数,描述序列 A。 Input 输 阅读全文
posted @ 2017-08-07 19:15 ~Lanly~ 阅读(230) 评论(0) 推荐(0) 编辑
摘要: Description 对于每个数字x,我们总可以把它表示成一些斐波拉切数字之和,比如8 = 5 + 3, 而22 = 21 + 1,因此我们可以写成 x = a1 * Fib1 + a2 * Fib2 + a3 * Fib3 + … + an * Fibn, 其中,Fib1 = 1, Fib2 = 阅读全文
posted @ 2017-08-07 07:41 ~Lanly~ 阅读(295) 评论(0) 推荐(0) 编辑
摘要: Description 小Y最近学得了最短路算法,一直想找个机会好好练习一下。话虽这么说,OJ上最短路的题目都被他刷光了。正巧他的好朋友小A正在研究一类奇怪的图,他也想凑上去求下它的最短路。 小A研究的图可以这么看:在一个二维平面上有任意点(x,y)(0<=x<=N,0<=y<=M,且x,y均为整数 阅读全文
posted @ 2017-08-07 07:22 ~Lanly~ 阅读(440) 评论(0) 推荐(0) 编辑
摘要: 状压DP 阅读全文
posted @ 2017-08-07 07:01 ~Lanly~ 阅读(289) 评论(0) 推荐(0) 编辑
摘要: 这里的Tarjan是基于DFS,用于求有向图的强联通分量。 运用了一个点dfn时间戳和low的关系巧妙地判断出一个强联通分量,从而实现一次DFS即可求出所有的强联通分量。 §有向图中, u可达v不一定意味着v可达u. 相互可达则属于同一个强连通分量 (Strongly Connected Compo 阅读全文
posted @ 2017-08-03 08:27 ~Lanly~ 阅读(1224) 评论(0) 推荐(1) 编辑
摘要: 所谓离散,就是化连续为不连续,使得我们某种枚举的方法得以实现。 当然,离散还能够帮助我们将某些数据范围很大达到2^16,但是这些数据并不多(例如才1000+),我们可以把数据进行离散,保持他们之间的相对大小。 例如这里有几个数:4865845,146384512,598745,896561634,4 阅读全文
posted @ 2017-08-02 19:20 ~Lanly~ 阅读(443) 评论(0) 推荐(1) 编辑