随笔分类 -  洛谷

摘要:Description 给定一个序列,还有操作数m,对于每个m,你需要将一段区间开方,还有求和 Solution 线段树维护,比较简单,可以当做练习题 Code 阅读全文
posted @ 2019-09-08 20:11 _sheldon 阅读(256) 评论(0) 推荐(0)
摘要:Description 给定一个01子串和操作数,每次操作可以使一个元素0变为1, 1变为0,求区间最长连续相邻不相等的长度 Solution 对于最长连续不相等,我们可以用几个量来维护,为: 1 lf 从左边开始的最长连续相邻不相等最大长度 2 rf 从右边开始的最长连续相邻不相等最大长度 3 m 阅读全文
posted @ 2019-08-29 17:19 _sheldon 阅读(289) 评论(0) 推荐(0)
摘要:Description 给定一个序列和静音段,最大值和最小值之差不超过一个特定的阈值c,输出每行示一段静音的起始位置,按照出现的先后顺序输出。如果没有静音则输出NONE。 solution 利用线段树维护区间最大值和最小值,再枚举每个静音段的开始位置,如果区间中的最大值和最小值的差不超过c,就输出 阅读全文
posted @ 2019-08-29 17:08 _sheldon 阅读(281) 评论(0) 推荐(0)
摘要:Description 你有长度为n的成绩序列,最终成绩为去掉一个最低的成绩后剩下的平均值(多个最低只去掉一个),现在你可以删除前k个(1<=k<=n-2),按升序输出所有可以使你最终成绩最高的K的值。 Solution 考虑线段树, 维护区间和与区间最小值,最后枚举k,计算出平均值,更新答案 Co 阅读全文
posted @ 2019-08-29 10:34 _sheldon 阅读(340) 评论(0) 推荐(0)
摘要:Description 阿明是一名推销员,他奉命到螺丝街推销他们公司的产品。螺丝街是一条死胡同,出口与入口是同一个,街道的一侧是围墙,另一侧是住户。螺丝街一共有NN家住户,第ii家住户到入口的距离为S_iSi​米。由于同一栋房子里可以有多家住户,所以可能有多家住户与入口的距离相等。阿明会从入口进入, 阅读全文
posted @ 2019-08-25 16:49 _sheldon 阅读(376) 评论(0) 推荐(0)
摘要:Description 给定n个点 其中p个点可以被贿赂, 被贿赂的金额为x,如果一个点被贿赂,他所指向的点也会被贿赂 求:如果不能全部被贿赂 输出NO以及不能被贿赂的点 否则输出YES和需要支付的金额的最小值 Solution 我们可以通过tarjan缩点,最后扫一遍dfn,若果有一个点并没有被访 阅读全文
posted @ 2019-08-24 09:48 _sheldon 阅读(224) 评论(0) 推荐(0)
摘要:Description 麦克找了个新女朋友,玛丽卡对他非常恼火并伺机报复。 因为她和他们不住在同一个城市,因此她开始准备她的长途旅行。 在这个国家中每两个城市之间最多只有一条路相通,并且我们知道从一个城市到另一个城市路上所需花费的时间。 麦克在车中无意中听到有一条路正在维修,并且那儿正堵车,但没听清 阅读全文
posted @ 2019-08-23 10:30 _sheldon 阅读(238) 评论(0) 推荐(0)
摘要:Description 一张有向图 长度均为1 输入格式为x y 表示x和y之间有一条路 给定s和t 求s到t的最短路 要求: 路径上的所有点的出边所指向的点都直接或间接与终点连通 Solution 在这里点包括3种: 1 自己指向的节点都可以到达终点 2 自己可以到达终点的点 3 普通的点 显然 阅读全文
posted @ 2019-08-21 15:17 _sheldon 阅读(265) 评论(0) 推荐(0)
摘要:Description 给定一张无向图,FJ在1号点,牛棚在n号点 FJ每次去牛棚都会按照最短路顺序(只走最短路)奶牛们可以让任意一条最短路上的边扩大2倍 此时就会出现一个比最短路更大的路的权值 即为增值 问 最大增值??? Solution 先跑一边dijkstra求出最短路 记录最短路权值为d 阅读全文
posted @ 2019-08-19 19:43 _sheldon 阅读(241) 评论(0) 推荐(0)
摘要:Description 小明在1号点 小红在n号点 他们之间的距离为。。。 给定n个点 m条边的有向图 每条边有起点s和终点t 以及从s转移到t距离会减少的w 输出他们之间可能的最短距离。如果这个距离可以无限缩小,输出“Forever love”(真是狗血的剧情) Solution 因为又是无限 所 阅读全文
posted @ 2019-08-18 10:22 _sheldon 阅读(245) 评论(0) 推荐(0)
摘要:Description 给定一张有向图 点权(当然你也可以理解为边权)为d or z-d 求在哪个点权值最大并且输出权值 如果可以无限制增加权值就输出-1 Solution 因为无限制增加权值就是一个环 于是我们就想到了这样一种可以判断环的算法: SPFA! 当然并不是纯粹的SPFA 我们可以用优先 阅读全文
posted @ 2019-08-17 18:10 _sheldon 阅读(292) 评论(0) 推荐(0)
摘要:Description 给定多组数据 每组数据给定n种货币 再给定m种货币之间的汇率 求是否存在一个环 使得汇率的积>1 即盈利 Solution 将每一中货币看作点 汇率看作边权 我们可以利用SPFA进行判断环 当一个点进行的松弛操作>=n时,即出现了一个环 这里要用最长路 将括号里的加号改为乘号 阅读全文
posted @ 2019-08-17 12:17 _sheldon 阅读(271) 评论(0) 推荐(0)
摘要:Description 给定三个数字m, n, c 表示有m头奶牛,n个牧场, c条道路 接下来m行 每行一个数字 表示i个奶牛在pp[i] 个牧场里 然后c行 每行三个数字x, y,z分别 表示x牧场和y牧场之间有一条道路,边权为z (无向图) 求一个牧场的编号 使得奶牛到这个牧场的总距离和最小 阅读全文
posted @ 2019-08-15 15:47 _sheldon 阅读(182) 评论(0) 推荐(0)
摘要:Description 在n个人中,某些人的银行账号之间可以互相转账。这些人之间转账的手续费各不相同。给定这些人之间转账时需要从转账金额里扣除百分之几的手续费,请问A最少需要多少钱使得转账后B收到100元。 第一行输入两个正整数n,m,分别表示总人数和可以互相转账的人的对数。 以下m行每行输入三个正 阅读全文
posted @ 2019-08-15 10:43 _sheldon 阅读(419) 评论(0) 推荐(0)