上一页 1 ··· 49 50 51 52 53 54 55 56 57 ··· 83 下一页
摘要: 嘟嘟嘟 刚开始我以为如果这头牛撞开一个干草堆的话,获得的冲刺距离只有新增的部分,但实际上是加上原来的部分的。 暴力很好写,区间排完序后一次判断每一个区间是否能逃脱,复杂度O(n2)。 优化想起来也不难:如果一个区间 i 能逃脱,区间 j 能到达 i,则 j 也能逃脱。所以对于每个区间开一个标记数组, 阅读全文
posted @ 2018-10-23 15:34 mrclr 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 嘟嘟嘟 01分数规划之最优比率环。 主要是发一下基于dfs的spfa。跑的贼快,原来总用时2000多ms还TLE了两个点,改成dfs后总用时直降43ms! 1 #include<cstdio> 2 #include<iostream> 3 #include<algorithm> 4 #include 阅读全文
posted @ 2018-10-23 14:37 mrclr 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 嘟嘟嘟 这道题很多题解说是二分图染色+模拟,然而其实一个贪心就够了。 如果s1或s2当前栈顶的元素刚好是排好序后的第k个数,那么自然要弹出栈;否则贪心的放入s1栈,同时要判断合法性;如果不行,再看看能否放入s2;如果还不行就输出0。 判断能否放入s1就是看看这个数之后如果有超过两个比s2栈顶元素还大 阅读全文
posted @ 2018-10-23 10:44 mrclr 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 其实就是怕忘了……这里发一下线性求逆元以及阶乘的逆元的板子。 线性求逆元 逆元是啥我就不说了,但是线性递推式怎么来的我还是可以证明一下的。 求 i 的逆元,假设[1, i - 1]的逆元已知。 设 p = k * i + b,则 b = p % i, k = ⌊p / i⌋ 。 则k * i + b 阅读全文
posted @ 2018-10-22 23:10 mrclr 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 嘟嘟嘟 刚开始我以为是kmp+dp,后来发现其实没那么复杂。 令dp[i][j][h][0/1]表示A串到第 i 位,B串到第 j 位,其中A串取了k个子串时,Ai 取/不取的方案数。那么转移方程就很容易的写出来了: dp[i][j][h][0] = dp[i - 1][j][h][0] + dp[ 阅读全文
posted @ 2018-10-22 22:31 mrclr 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 嘟嘟嘟 这题刚开始是什么思路也没有,关键是不知道怎么解决序列反转的问题。 然后我就想到如果暴力反转一个序列的话,实际上就是不断交换数组中的两个数ai和aj,同时要满足交换的数不能交叉。 然后又看了一眼(岂止一眼)题解,因为ai <= 50,所以令dp[i][j][L][R]表示区间[i, j],mi 阅读全文
posted @ 2018-10-22 19:51 mrclr 阅读(291) 评论(0) 推荐(0) 编辑
摘要: 嘟嘟嘟 看到绝对值最小这种逼近的问题,应该能想到二分。 容易发现,随着W的变大,符合条件的矿石越来越少,即满足单调关系。因此我们二分W,然后在W确定时求出x = ΣYi,如果x >= S,说明W取小了,向右二分;否则向左二分。每一次都更新答案。 求x用前缀和就解决了。 时间复杂度:二分O(logn) 阅读全文
posted @ 2018-10-22 15:33 mrclr 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 嘟嘟嘟 一道最小割的题。 所有跟源点连边的点代表被解雇了,跟汇点连边的代表没被解雇。 因为割掉每一条边代表付出一定的代价,所以应该先把正收益加起来,然后再减去最小割。 那么对于所有解雇收益为正的点,从汇点连一条容量为该收益的边,割掉这条边代表不解雇这个人了,付出的代价就是这个收益;对于收益为负的点, 阅读全文
posted @ 2018-10-22 10:55 mrclr 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 离NOIP2018越来越近了,然而我仍有一些没有彻底弄懂的地方,有点慌,所以准备从这周开搞搞基础。 不说别的了,先把这篇总结写完。 Day1的题感觉不是很难,每一道题的暴力也都可写,总的来说难度跟noip差不多吧。 有一个想吐槽的地方,就是为啥题目把算法都告诉了…… T1 backpack 期望得分 阅读全文
posted @ 2018-10-21 23:11 mrclr 阅读(255) 评论(0) 推荐(0) 编辑
摘要: 嘟嘟嘟 一道最小割典型题。 对于一个模块x,我们把他拆成两个点x1, x2:从源点向x1连一条ai的边,割掉他代表x在A机器上的花费;同理x2向汇点连一条bi的边,割掉他代表在B机器上的花费。因为每一个模块必须完成,所以x1和x2连一条INF的边,割掉他的代价是无穷的。 题中还说如果x和y不在同一机 阅读全文
posted @ 2018-10-19 09:51 mrclr 阅读(199) 评论(0) 推荐(0) 编辑
上一页 1 ··· 49 50 51 52 53 54 55 56 57 ··· 83 下一页