摘要: 斜率优化 # include <stdio.h> # include <stdlib.h> # include <iostream> # include <string.h> # include <algorithm> # define IL inline # define RG register 阅读全文
posted @ 2017-12-09 11:17 Cyhlnj 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 斜率优化 # include <stdio.h> # include <stdlib.h> # include <iostream> # include <string.h> # include <algorithm> # define IL inline # define RG register 阅读全文
posted @ 2017-12-09 11:17 Cyhlnj 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 斜率优化 # include <stdio.h> # include <stdlib.h> # include <iostream> # include <string.h> # include <algorithm> # define Sqr(x) (1LL * (x) * (x)) # defi 阅读全文
posted @ 2017-12-09 11:16 Cyhlnj 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 斜率优化 # include <stdio.h> # include <stdlib.h> # include <iostream> # include <string.h> # include <algorithm> # define IL inline # define RG register 阅读全文
posted @ 2017-12-09 11:15 Cyhlnj 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 斜率优化 # include <stdio.h> # include <stdlib.h> # include <iostream> # include <string.h> # include <algorithm> # define Sqr(x) (1LL * (x) * (x)) # defi 阅读全文
posted @ 2017-12-09 11:14 Cyhlnj 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 分段矩乘即可 # include <stdio.h> # include <stdlib.h> # include <iostream> # include <string.h> # define ll long long # define RG register # define IL inlin 阅读全文
posted @ 2017-12-09 11:11 Cyhlnj 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 左偏树加lazy操作即可 # include <stdio.h> # include <stdlib.h> # include <string.h> # include <iostream> # include <algorithm> # define ll long long # define R 阅读全文
posted @ 2017-12-09 11:09 Cyhlnj 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 新建一个优先队列,将源点s加入到队列中; 从优先级队列中弹出f(p)最小的点p,如果点p就是t,则计算t出队的次数; 如果当前为t的第k次出队,则当前路径的长度就是s到t的第k短路的长度,算法结束; 否则遍历与p相连的所有的边,将扩展出的到p的邻接点信息加入到优先级队列 # include <ios 阅读全文
posted @ 2017-12-09 11:07 Cyhlnj 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 。。。 和Kruskal生成树一样 本来是u,v连一条f的边 现在变成新建一个点,点权为f,u v都像它连无边权的边 (实际上应该是u的根和v的根) 这样树有一些性质: 1.二叉树 2.原树与新树两点间路径上边权(点权)的最大(最小)值相等 3.子节点的边权(大于等于)小于等于父亲节点 4.原树中两 阅读全文
posted @ 2017-12-09 10:59 Cyhlnj 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 思路 直径即最长的两点的距离 枚举凸包上的所有边,对每一条边找出凸包上离该边最远的顶点(用叉积),计算这个顶点到该边两个端点的距离,并记录最大的值。但是注意到当我们逆时针枚举边的时候,最远点的变化也是逆时针的,这样就可以不用从头计算最远点,而可以紧接着上一次的最远点继续计算。于是我们得到了O(n)的 阅读全文
posted @ 2017-07-30 22:42 Cyhlnj 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 凸包真是一个神奇的算法。。 概念 凸包,我理解为凸多边形 叉积 对于向量AB和向量BC,记向量AB*向量BC = AB * BC * sin ∠ABC,而叉积的绝对值其实就是S△ABC/2 对于平面上的一些点,我们要求凸包上所有的点,可以使用Graham算法 时间复杂度O(nlogn) 思路 先找到 阅读全文
posted @ 2017-07-30 22:38 Cyhlnj 阅读(420) 评论(0) 推荐(0) 编辑
摘要: 题意 当排队等候喂食时,奶牛喜欢和它们的朋友站得靠近些。FJ有N(2<=N<=1000)头奶牛,编号从1到N,沿一条直线站着等候喂食。奶牛排在队伍中的顺序和它们的编号是相同的。因为奶牛相当苗条,所以可能有两头或者更多奶牛站在同一位置上。即使说,如果我们想象奶牛是站在一条数轴上的话,允许有两头或更多奶 阅读全文
posted @ 2017-07-30 22:10 Cyhlnj 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 题意 给你n个点,m条边,要求每条边只能走一次的S到T的最短路径的个数 题解 在我又WA又TLE还RE时,yyb大佬告诉我说要跑两遍SPFA,还说我写的一遍SPFA是错的,然而 啪啪打脸。。。 而且他的 比我跑得慢,2333 接下来讲一下方法 首先一遍SPFA(或dijkstra)从S跑一遍到所有点 阅读全文
posted @ 2017-07-29 20:12 Cyhlnj 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 题意 有n(1<=n<=100)个学生参加编程比赛。 给出m条实力信息。(1<=M<=4500) 其中每一条的格式为 A B (1<=A<=N,1<=B<=N,A!=B) 意思是A的实力比B强。 如果A比B强且B比C强,那么A一定比C强。 问最后有多少名学生可以确定他的排名。 保证输入信息不存在矛盾 阅读全文
posted @ 2017-07-27 20:11 Cyhlnj 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 题意 给你n个点,1为起点,n为终点,要求所有1到n所有路径中每条路径上最小值的最最值。 思路 不想打最短路 跑一边最大生成树,再扫一遍1到n的路径,取最小值即可,类似Frogger POJ - 2253,代码都没怎么改 常数巨大的丑陋代码 # include <stdio.h> # include 阅读全文
posted @ 2017-07-26 21:25 Cyhlnj 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 题意 给你n个点,1为起点,2为终点,要求所有1到2所有路径中每条路径上最大值的最小值。 思路 不想打最短路 跑一边最小生成树,再扫一遍1到2的路径,取最大值即可 注意g++要用%f输出!!! 常数巨大的丑陋代码 # include <stdio.h> # include <stdlib.h> # 阅读全文
posted @ 2017-07-26 16:38 Cyhlnj 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 题意 三个字符串,找一个字符串(它的子串含有以上三个字符串)使它的长度最短,输出此字符串的长度。 题解 先枚举字符串排列,直接KMP两两匹配,拼接即可。。。答案取最小值。。 常数巨大的丑陋代码 # include <stdio.h> # include <stdlib.h> # include <i 阅读全文
posted @ 2017-07-24 21:28 Cyhlnj 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 题意 农夫的养牛场,是一个R 行C 列的矩形,一场大雨后,养牛场低洼的地方都有了积水。农夫的牛都很娇贵的,他们吃草的时候,不想把他们的蹄子给弄脏了。为了不让牛儿们把它们的蹄子弄脏,农夫决定把有水的地方铺上木板。他的木板是宽度为1,长度没有限制的。 他想用最少数目的木板把所有有水的低洼处给覆盖上,木板 阅读全文
posted @ 2017-07-24 19:32 Cyhlnj 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 题意 给定一个区间长度为l,共有t种颜色,o个操作。 C a b x 表示把a到b染成第x种颜色,P a b 表示查询a b间共有几种颜色。 初始状态下所有颜色为1,我就是因为这一点WA了几次 题解 t最大才30,颜色直接二进制压缩即可,不要每次修改a b间所有的点,lazy一下就好了 常数巨大的丑 阅读全文
posted @ 2017-07-21 10:44 Cyhlnj 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 题目描述 Z国的骑士团是一个很有势力的组织,帮会中汇聚了来自各地的精英。他们劫富济贫,惩恶扬善,受到社会各界的赞扬。 最近发生了一件可怕的事情,邪恶的Y国发动了一场针对Z国的侵略战争。战火绵延五百里,在和平环境中安逸了数百年的Z国又怎能抵挡的住Y国的军队。于是人们把所有的希望都寄托在了骑士团的身上, 阅读全文
posted @ 2017-07-20 22:32 Cyhlnj 阅读(142) 评论(0) 推荐(0) 编辑