摘要: 训练时间:2019-03-31 本场阿渠连出A和D,成功带我们晋级。 I题我坚定的写Java,完全没往打表找规律上想。背锅。 A - Jin Yong’s Wukong Ranking List (HihoCoder - 1870) 给你n对拓扑关系,找出第一个不符合之前的拓扑关系的拓扑对。 建图, 阅读全文
posted @ 2019-04-07 00:43 jvruodejrLS 阅读(298) 评论(0) 推荐(0) 编辑
摘要: 题目很水。睡过了迟到了一个小时,到达战场一看,俩队友AC五个了。。 就只贴我补的几个吧。 B - Breaking Biscuits Gym - 101606B 旋转卡壳模板题。然后敲错了。 代码是另一种做法:对于每条边,枚举两边的所有点到直线的距离,分别取最大值,然后加起来。 F - Flippi 阅读全文
posted @ 2019-04-04 09:35 jvruodejrLS 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 【题目描述】 给你一个n个城市的图,城市1~n标号,问从0点把所有城市都走一遍,且只走一遍,再回到0的最短路。 n <= 10. 【题目解析】 先求出任意两个城市的最短路。 然后用 dp[i][j] 表示走过的城市的状态为 i ,到达的城市为 j 的最短路。 那么对于dp[i][j] = max(d 阅读全文
posted @ 2019-04-02 23:30 jvruodejrLS 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 二分图匹配模板题 阅读全文
posted @ 2019-03-26 22:10 jvruodejrLS 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 【题目大意】 在很久很久以前,曾经有两个国家和睦相处,无忧无虑的生活着。一年一度的评比大会开始了,作为和平的两国,一个朋友圈数量最多的永远都是最值得他人的尊敬,所以现在就是需要你求朋友圈的最大数目。两个国家看成是AB两国,现在是两个国家的描述: 1.A国:每个人都有一个友善值,当两个A国人的友善值a 阅读全文
posted @ 2019-03-26 22:00 jvruodejrLS 阅读(259) 评论(0) 推荐(0) 编辑
摘要: 给定n,m。让你用O(log(n))以下时间算出ans。 打表,推出 ans[i] = 2^(i-1) + f[i-2] 故 i奇数:ans[i] = 2^(i-1) + 2^(i-3) ... + 1; i偶数:ans[i] = 2^(i-1) + 2^(i-3) ... + 2; 故可以用等比数 阅读全文
posted @ 2019-03-21 23:44 jvruodejrLS 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 圆上有n个点,位置不确定。问这些点两两连接成的线段,最多可以把圆划分成多少块平面? 欧拉公式:V-E+F = 2,V是点数,E是边数,F是面数。 答案是F=C(n,4)+C(n,2)+1,看的别人推的。。我实在推不出来。 写这篇博客的原因是第一次用Java的BigInteger。 阅读全文
posted @ 2019-02-02 17:36 jvruodejrLS 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 题目描述 有一个nnn个点mmm条边的图画在了平面上,你想知道有多少对边之间对应的线段相交。 特别地,对于图中的一对边,如果有公共点且只在对应的端点相交,那么我们不认为这对边相交。 题目描述 有一个nnn个点mmm条边的图画在了平面上,你想知道有多少对边之间对应的线段相交。 特别地,对于图中的一对边 阅读全文
posted @ 2019-01-25 20:54 jvruodejrLS 阅读(229) 评论(0) 推荐(0) 编辑
摘要: B - Pond Cascade 优先队列维护这个水池需要多少时间 或者 直接扫一遍。 D - Equinox Roller Coaster N个点,找出一个可以构成的最大的正方形,并且正方形的边都与坐标轴平行。 对于每个X/Y坐标建一个表。对于每个点,枚举它X/Y坐标对应的表中所有的点(选size 阅读全文
posted @ 2018-10-23 17:46 jvruodejrLS 阅读(207) 评论(0) 推荐(0) 编辑
摘要: A Absolute B Counting Permutations C Cover D Game E Hack It 构造一个矩阵,使得任何子矩阵的四个角不能都为1。 F Matrix G Naive Operations 用线段树维护每个点被操作了多少次,然后当操作次数是b[i]的整数倍时,将s 阅读全文
posted @ 2018-10-19 16:49 jvruodejrLS 阅读(177) 评论(0) 推荐(0) 编辑
摘要: A Maximum Multiple 给定一个数字n,找到三个n的因数 x y z ,满足 x + y + z = n。求 xyz 的最大值。 若n%3 == 0,则答案一定是 (n/3)^3。 若要把 n 分成两个数,则一定是 n/2 和 n/2。但是现在是三个数,所以要把其中一个 n/2 分成 阅读全文
posted @ 2018-10-17 19:42 jvruodejrLS 阅读(152) 评论(0) 推荐(0) 编辑
摘要: A Artwork B Bless You Autocorrect! C Card Hand Sorting D Daydreaming Stockbroker 贪心,低买高卖,不要爆int。 E Exponial F Fleecing the Raffle G Game Rank 炉石传说的ran 阅读全文
posted @ 2018-10-10 18:10 jvruodejrLS 阅读(239) 评论(0) 推荐(0) 编辑
摘要: A. Thickest Burger 大数 × 2 + 小数 B. Relative atomic mass 给定一个分子式,只包含 H C O 三种,求相对分子质量。 C. Recursive sequence 矩阵快速幂 D. Winning an Auction 博弈 E. Counting 阅读全文
posted @ 2018-10-05 20:36 jvruodejrLS 阅读(201) 评论(0) 推荐(0) 编辑
摘要: A - Relic Discovery 签到 B - Pocket Cube 直接模拟六种转法。 C - Pocky 记住ln(2)=0.693147。故ans = ln(L) / ln(d)。 D - Lucky Coins E - Fibonacci F - Lambda Calculus G 阅读全文
posted @ 2018-10-03 21:08 jvruodejrLS 阅读(341) 评论(0) 推荐(0) 编辑
摘要: A. HDU 5999 The Third Cup is Free 简单模拟。 B. HDU 6000 Wash n 件衣服, m 个洗衣机,k 个烘干机。每个洗衣机和烘干机需要不同的时间。问 n 件衣服洗完 + 烘干最小时间。 看做两部:洗 + 烘干,用洗需要时间长的去配烘干需要时间短的,所有衣服 阅读全文
posted @ 2018-10-02 18:31 jvruodejrLS 阅读(405) 评论(2) 推荐(1) 编辑
摘要: (待补) A. Fancy Antiques 爆搜。 B. Alternative Bracket Notation C. Greetings! D. Programming Team 0/1分数规划 + 树上依赖型背包。 E. K-Inversions 将 A 和 B 的相对位置看做多项式,用FF 阅读全文
posted @ 2018-10-02 18:17 jvruodejrLS 阅读(440) 评论(0) 推荐(0) 编辑
摘要: 题意: 对于一个序列a,构造一个序列b,使得两个序列,对于任意的区间 [l, r] 的区间最靠近左端点的那个最大值的位置,并且序列 b 满足 0 < bi < 1。 给定一个序列 a ,求序列 b 中所有元素的和的期望。 题解: 若满足题意,则 a 和 b 的笛卡尔树同构。 因为 bi 在 0 到 阅读全文
posted @ 2018-09-30 22:08 jvruodejrLS 阅读(260) 评论(1) 推荐(0) 编辑
摘要: 题意:给定n个连续排列的矩形的高,矩形的宽都为1。问最大矩形覆盖。 例如:n = 7,h[i] = (2 1 4 5 1 3 3),最大覆盖为8。 题解: 首先可以确定,最大矩形的高一定等于某个矩形的高,宽一定等于某个矩形可以向两边最大可以延伸到的范围。 维护一个非降序的单调栈,然后依次枚举矩形的高 阅读全文
posted @ 2018-09-30 09:15 jvruodejrLS 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 有n堆石子,每次你可以把相邻的最少L堆,最多R堆合并成一堆。 问把所有石子合并成一堆石子的最少花费是多少。 如果不能合并,输出0。 石子合并的变种问题。 用dp[l][r][k]表示将 l 到 r 之间的石子合并成 k 堆。 显然是k == 1 时,合并才是需要花费代价的。k >= 2时转移的时候不 阅读全文
posted @ 2018-09-02 22:44 jvruodejrLS 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 感觉全是思维乱搞题。 Gym - 101775J Straight Master 给你n种扑克,你每次可以出连续的3 ~ 5 张,问你能否出完。 相当于每次把一个长度为3~5的区间整体减1,问最后是否能够全部减成0。 显然,每次把一个长度大于5的区间整体减1也是可以的,因为6 = 3+3,7 = 3 阅读全文
posted @ 2018-08-31 23:11 jvruodejrLS 阅读(1221) 评论(0) 推荐(0) 编辑
摘要: 有n(2e4)个宝石两个人轮流从左侧取宝石,Alice先手,首轮取1个或2个宝石,如果上一轮取了k个宝石,则这一轮只能取k或k+1个宝石。一旦不能再取宝石就结束。双方都希望自己拿到的宝石数比对方尽可能多。问你,先手比后手多拿的最大宝石数。 dp[s][k] 表示从已经拿了s个,这一次可以拿k个,也可 阅读全文
posted @ 2018-08-30 11:26 jvruodejrLS 阅读(312) 评论(0) 推荐(0) 编辑
摘要: 你有三种盘子,黑薄,白薄,黑厚。 薄的盘子占1,厚的盘子占k。 有一个高度为L的桶,盘子总高度不能超出桶的总高度(可以小于等于)。相同颜色的盘子不能挨着放。 问桶内装盘子的方案数。 如 L = 5,k = 3时的方案数为6(下图) 很简单的DP。 注意好 k 和当前枚举到的位置的关系。 f[i][1 阅读全文
posted @ 2018-08-28 10:57 jvruodejrLS 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 给你n个区间,求: 1:最多有多少区间与同一个区间相交。 2:相交部分的最大区间数目。 第二个问题可以直接用差分解决。(区间修改) 第一个问题: 对于每一个区间,统计在它左端点前面的右端点的数目,和在它右端点前面的左端点的数目。 然后与它相交的区间数 = 后者 - 前者。(!!!) 这样用两个前缀和 阅读全文
posted @ 2018-08-27 21:25 jvruodejrLS 阅读(356) 评论(0) 推荐(0) 编辑
摘要: n个点的一张图,问能否给每个点染上三种颜色中的一种,使得没有相邻的点颜色相同? n <= 35。 先想的求出最大团,然后如果最大团的点数 > 3一定不可以。 最大团的点数 <= 3呢?一定可以吗?不是这样的。 下面这个图最大团是3,然而也是不满足条件的。 可以搜索,枚举第一个点染的颜色,就可以3*2 阅读全文
posted @ 2018-08-26 21:50 jvruodejrLS 阅读(328) 评论(0) 推荐(0) 编辑
摘要: 初学网络流。存一下Dinic板子。 复杂度O(n^2*m) UVA - 1515 Pool construction 把每个草地与 S 相连,花费为dig,每个洞与 T 相连,花费为 然后对于每个两个相邻的点连一条权值为 build 的边。 求最小割,就是把草和洞分开的花费。 因为只有三种割的情况: 阅读全文
posted @ 2018-08-25 20:52 jvruodejrLS 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 有n个数字,你需要把这n个数字合成一个数字,每次只能把k个数字合并成一个,花费为这k个数字的和。 给一个最大花费,问不超过这个最大花费的情况下,k的最小值。 这个题很容易想到二分答案+优先队列check 然而这样复杂度是 O(n logn*logn ),会TLE(这特么都会TLE?加个读入优化就过了 阅读全文
posted @ 2018-08-24 16:25 jvruodejrLS 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 有 n 种主武器,m 种副武器。每种武器有一个基础分数k种属性值 X[i] 。 选出一种主武器 mw 和一种副武器 sw,使得两种武器的分数和 + 每个属性的差值尽量大。(参考下面的式子) 多维的最远曼哈顿距离。 因为对于每一种属性对答案的贡献,要么是 Xmw[i] - Xsw[i] ,要么是 Xs 阅读全文
posted @ 2018-08-23 13:30 jvruodejrLS 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 首先膜一发网上的题解。大佬们tql。 给你n个单调递增的数字,问是否能够把这些数字重新构成一棵二叉搜索树(BST),且所有的父亲结点和叶子结点之间的gcd > 1? 这个题场上是想暴力试试的。结果不行。发现符合最优子结构,可以DP。但是想不出来怎么转移。 看了大佬的题解。 若以第 k 个结点为根节点 阅读全文
posted @ 2018-08-21 22:12 jvruodejrLS 阅读(343) 评论(0) 推荐(0) 编辑
摘要: 参考博客:zro https://blog.csdn.net/alusang/article/details/81840944 orz 给你一个分母 m 和一个浮点数 x,让你求出一个分母不超过 m 的分数值最接近 x 的分数。 最终答案要求是最简分数。 数学上,n阶的法里数列是0和1之间最简分数的 阅读全文
posted @ 2018-08-21 20:06 jvruodejrLS 阅读(542) 评论(0) 推荐(0) 编辑
摘要: From : North American Invitational Programming Contest 2018 给你一个图,以及它的补图。如果部分点在原图中是团,并且其他的所有点在补图中也是团,那么就叫做一个双团。 要求计算图中双团的数量。 这篇博客使我理解了这个问题:zro https:/ 阅读全文
posted @ 2018-08-21 11:03 jvruodejrLS 阅读(322) 评论(0) 推荐(0) 编辑
摘要: 给定一个序列,每次从序列中找一个长度最大的元素相同的片段,删除它。 如果长度相同,删除最靠左边的那个片段。 问,需要删几次。 用链表处理删除片段。对于删除之后两边又能连成一个片段的那种情况,用set记一下合并就好了。 就是如果这个片段被合并成另一片段了,那么优先队列取到这个的时候就直接pop掉。 本 阅读全文
posted @ 2018-08-20 18:59 jvruodejrLS 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 给你 n 条线段,计算这 n 条线段总共的交点数目。 几何线段相交的裸题。 快速排斥实验 + 跨立实验,N^2 两两判断就可以。 关于上述判定线段相交的方法可以去百度资料,在此不再赘述。 阅读全文
posted @ 2018-08-17 15:29 jvruodejrLS 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 给定一个字符串,求出一个前缀A,使得字符串的构成可以表示成ABABA的形式(B可以为空串)。 输出这个前缀的最大长度。 KMP算法Next数组的使用。 枚举中间的每个位置,可以根据Next数组求出这个位置对应的前缀。然后暴力判断前缀与后缀是否相等即可。 如图,枚举的位置为 i,则Next[i] = 阅读全文
posted @ 2018-08-17 00:02 jvruodejrLS 阅读(106) 评论(0) 推荐(0) 编辑
摘要: void GetNext(char s[], int len) { Next[0] = -1; int j = -1; for (int i = 1; i -1 && s[j+1] != s[i]) j = Next[j]; if (s[j+1] == s[i... 阅读全文
posted @ 2018-08-16 13:54 jvruodejrLS 阅读(92) 评论(0) 推荐(0) 编辑
摘要: 有 n 个员工,n-1个从属关系。 不能同时选择某个员工和他的直接上司,问最多可以选多少人,以及选法是否唯一。 树上的最大独立集问题。只不过多了一个判断唯一性。 dp[u][0]表示不选这个点的状态,dp[u][1]表示选这个点的状态。 如果不选 u, 那么 u点状态是由 dp[v][0] 或者 d 阅读全文
posted @ 2018-08-16 09:54 jvruodejrLS 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 给出一个长度不超过300000的字符串 S,然后给出 n 个长度不超过100的字符串。 如果字符串可以多次使用,用这 n 个字符串组成 S 的方法数是多少? 比如样例中,abcd = a + b + cd = ab + cd dp[i] 表示用这n个字符串构成,S中从 i ~ len之间的字母构成的 阅读全文
posted @ 2018-08-13 16:31 jvruodejrLS 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 有很多单词(只有小写字母组成,不会有重复的单词出现) 要统计出以某个字符串为前缀的单词数量(单词本身也是自己的前缀). 每个单词长度不会超过10. Trie树的模板题。这个题内存把控不好容易MLE。 经过某一个节点就记一下插入时经过的次数。那么最后判断一个前缀的时候就看前缀是否能够存在。 如果存在, 阅读全文
posted @ 2018-08-11 22:52 jvruodejrLS 阅读(124) 评论(0) 推荐(0) 编辑
摘要: RMQ问题: 给定一个序列,每次询问一个区间最小值 / 最大值。 没有修改。 阅读全文
posted @ 2018-08-11 17:22 jvruodejrLS 阅读(313) 评论(0) 推荐(0) 编辑
摘要: HDU有个网名叫做8006的男性同学,结交网友无数,最近该同学玩起了浪漫,同时给n个网友每人写了一封信,这都没什么,要命的是,他竟然把所有的信都装错了信封!注意了,是全部装错哟! 现在的问题是:请大家帮可怜的8006同学计算一下,一共有多少种可能的错误方式呢? 错排。 当n个编号元素放在n个编号位置 阅读全文
posted @ 2018-08-11 10:39 jvruodejrLS 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 给定一个长度为n的序列,m次操作。 每次操作 可以将一个区间内的所有数字变为它的根号。 可以查询一个区间内所有元素的和。 线段树的初级应用。 如果把一个区间内的元素都改为它的根号的话,是需要每个数字都进行修改的。这样就会超时。 一个优化就是区间修改的当区间时,若区间长度等于区间和,那这个区间里的所有 阅读全文
posted @ 2018-08-11 10:08 jvruodejrLS 阅读(124) 评论(0) 推荐(0) 编辑

Contact with me