摘要: 区间dp入门 阅读全文
posted @ 2019-03-10 20:41 木流牛马 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 题目链接 参考题解 题意: 给你 整形数组a 和 整形数组b ,要你c[i] = d * a[i] + b[i], 求 在c[i]=0的时候 相同的d的数量 最多能有几个。 思路: 1. 首先打开别人的博客。 2.......... 一开始尝试自己做了做 没做出来,看了别人博客的分析之后发现自己连 阅读全文
posted @ 2019-03-09 12:47 木流牛马 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 题目链接 //kuangbin 题意: 现在你和你的朋友正在玩一种游戏。 你的朋友写下一串0和1的序列,然后你选择其中一串子序列(如[3,5])并且问他这个序列是包含奇数个1还是偶数个1(和是奇数还是偶数)。 你可以问你的朋友任意个问题,而你的朋友会回答你的问题。 你的任务是猜出整个朋友的序列。但是 阅读全文
posted @ 2019-02-27 17:25 木流牛马 阅读(730) 评论(0) 推荐(0) 编辑
摘要: 题目链接 原创的博客 题意: 超市里有N个商品. 第i个商品必须在保质期(第di天)之前卖掉, 若卖掉可让超市获得pi的利润。 每天只能卖一个商品。 现在你要让超市获得最大的利润。 n , p[i], d[i] 范围都在10000以内 。 用另一种贪心的方法来做,先把所有产品按照利润从大到小排序,然 阅读全文
posted @ 2019-02-27 15:52 木流牛马 阅读(458) 评论(0) 推荐(0) 编辑
摘要: 题目链接 参考博客 题意: 给n个线段,对于每个线段问它覆盖了多少个线段。 思路: 由于线段端点是在2e9范围内,所以要先离散化到2e5内(左右端点都离散化了,而且实际上离散化的范围是4e5),然后对右端点升序排序: 例如 2 3 5 6 4 7 1 8 这样的话,如果对i<j,a[ i ].l > 阅读全文
posted @ 2019-02-23 16:58 木流牛马 阅读(229) 评论(0) 推荐(0) 编辑
摘要: 参考博客 时间复杂度对比: Dijkstra: O(n2) Dijkstra + 优先队列(堆优化): O(E+V∗logV) SPFA: O(k∗E) ,k为每个节点进入队列的次数,一般小于等于2,最坏情况为O(V∗E) BellmanFord: O(V∗E) ,可检测负圈 Floyd: O(n3 阅读全文
posted @ 2019-01-29 11:35 木流牛马 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 优先队列建立小根堆方法1: 优先队列建立小根堆方法2: 重载cmp的方法: 关于vector的 push_back(edge(a,b) ): 阅读全文
posted @ 2019-01-28 13:29 木流牛马 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 题目 题意: 无向图,给n个城市,n*n条边,每条边都有一个权值 代表修路的代价,其中有k个点有发电站,给出这k个点的编号,要每一个城市都连到发电站,问最小的修路代价。 思路: prim:把发电站之间e[i][j]都设置为0,然后模板套进去就行。 krusl:把所有的发电站都先弄进一个并查集(做法比 阅读全文
posted @ 2019-01-28 11:20 木流牛马 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 介绍的内容 博客2 题目:欧拉回路 题意: 欧拉回路是指不令笔离开纸面,可画过图中每条边仅一次,且可以回到起点的一条回路。现给定一个图,问是否存在欧拉回路? #include<iostream> #include<cstdio> #include <cctype> #include<algorith 阅读全文
posted @ 2019-01-27 15:16 木流牛马 阅读(525) 评论(0) 推荐(0) 编辑
摘要: 题目链接 思路: 如果n=3。 3->1,2(孤立) ,那么正向拓扑,应该是2 3 1,因为1要比2先出来,所以这种不满足。 逆向: 1->3,2 。此时若优先级从大到小,则2 1 3,逆向输入就是3 1 2 。 阅读全文
posted @ 2019-01-27 13:59 木流牛马 阅读(304) 评论(0) 推荐(0) 编辑