随笔分类 -  优先队列

摘要:"题目链接" 【题目翻译】 给你一个长度为n的连续0,你现在可以每次把其中一段的最中间那个位置的数字改为++cur(cur初值为0) 但是你每次选取的一段需要满足这样的要求: 1.是一个连续的最大0段。 2.这个0段的长度是最长的。 3.这个0段是最靠左的。 【题解】 定义个长度为n的priorit 阅读全文
posted @ 2020-05-23 11:02 AWCXV 阅读(119) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 每次都选择剩余个数最多的3个不同数字组成一组. 优先消耗剩余个数多的数字 这样能尽量让剩余的数字总数比较多,从而更加可能得到更多的3个组合 【代码】 java include using namespace std; const int 阅读全文
posted @ 2019-03-28 23:08 AWCXV 阅读(115) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 有一个物品的价格在1..n这些位置各不相同。 你初始有无限的钱。 问你从1走到n. 你每次可以选择买入一个或者卖出一个该种物品(或啥都不做) 问你最后的最大利润。 【题解】 定义一个数据类型为pair temp的优先队列q。 其中second的值为1或者 阅读全文
posted @ 2018-09-14 22:33 AWCXV 阅读(135) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 开k个优先队列。每个队列都满足从小到大那种。。 首先将所有的怪物加入到第一个队列中。 然后对于v[i] =pq[i].top()的怪物,把这个怪物加入到i+1个队列。 然后每个队列都这么做。 直到不会有怪物从一个队列转移到另外一 阅读全文
posted @ 2018-08-13 18:18 AWCXV 阅读(548) 评论(2) 推荐(1) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 选择的连接肯定是相邻的点对。 那么我们处理出来长度为n 1的数组a 其中a[i 1] = dis[i] dis[i 1] 那么问题就转化成在a数组中取出不相邻的k个数字。 这k个数字的和要求最小。 那么我们把每个数字都加入到堆中 阅读全文
posted @ 2018-04-02 19:43 AWCXV 阅读(156) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 感觉很像一道最短路。 然后就试了一发。 结果真的是。。 只要用一个优先队列优化的dijkstra算法求出每个点的最短路上的前一个点是什么就可以了。 相同大小的话.取每个边的前一个边的边权较小的那个。 然后把每个点的前缀边输出就好 阅读全文
posted @ 2018-02-08 20:17 AWCXV 阅读(132) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 结束时间比较早的,就早点开始做。 所以,将n件事情,按照结束时间升序排。 然后对于第i件事情。 尽量把它往左排。 即t+1..t+a[i].q 然后如果发现t+a[i].q 【代码】 cpp include using name 阅读全文
posted @ 2018-01-11 14:24 AWCXV 阅读(136) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 因为每件衣服都是没有区别的。 只有洗衣机不同会影响洗衣时间。 那么我们把每台洗衣机洗衣的时间一开始都加入到队列中。 比如{2,3,6,7} 这个队列里面的数字就代表了如果某件衣服用这台洗衣机洗的话,要在什么时刻洗好。 对于每一件 阅读全文
posted @ 2017-12-06 11:14 AWCXV 阅读(115) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 每次取出最小的数字,在后面加上一个4或一个7就好; 会发现最后的数字很少的。 【代码】 cpp include using namespace std; define ll long long priority_queue ,g 阅读全文
posted @ 2017-11-07 19:39 AWCXV 阅读(99) 评论(0) 推荐(0) 编辑
摘要:所给的代码最顶端是最小的元素 要改为最顶端是最大的则只需把 friend bool operator b.val; } 改成 friend bool operator#include using namespace std;struct Node{ int adj; ... 阅读全文
posted @ 2017-10-06 19:23 AWCXV 阅读(92) 评论(0) 推荐(0) 编辑
摘要:time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard output You are given a set Y of n distinct ... 阅读全文
posted @ 2017-10-06 19:23 AWCXV 阅读(798) 评论(0) 推荐(0) 编辑
摘要:time limit per test3 seconds memory limit per test256 megabytes inputstandard input outputstandard output One tradition of ACM-ICPC contests i... 阅读全文
posted @ 2017-10-06 19:22 AWCXV 阅读(132) 评论(0) 推荐(0) 编辑
摘要:【题目链接】:http://www.lydsy.com/JudgeOnline/problem.php?id=1029【题意】 【题解】 /* 按照T2升序排 顺序枚举每一个建筑; 如果当前建筑能够修理; 则修理它; 并将它的T1值加入到堆中; 然... 阅读全文
posted @ 2017-10-04 18:45 AWCXV 阅读(87) 评论(0) 推荐(0) 编辑
摘要:time limit per test4 seconds memory limit per test256 megabytes inputstandard input outputstandard output All our characters have hobbies. The... 阅读全文
posted @ 2017-10-04 18:45 AWCXV 阅读(234) 评论(0) 推荐(0) 编辑
摘要:【链接】点击打开链接【题意】在这里写题意【题解】先每个单位都不建造bi;打死一个ai之后,把bi加入到大根堆里面.然后等到不够打死某个单位的时候;从大根堆里面取出最大的那个bi;不断取,直到够打死ai为止。【错的次数】0【反思】m写成了n【代码】/* */#include #include #inc... 阅读全文
posted @ 2017-10-04 18:44 AWCXV 阅读(141) 评论(0) 推荐(0) 编辑
摘要:【链接】http://acm.hdu.edu.cn/showproblem.php?pid=6181【题意】让你求从1到n的次短路【题解】模板题;因为点可以重复走;则一定会有次短路。dijkstra算法+优先队列优化一下就好.【错的次数】11+【反思】在写优先队列的时候,节点和路径长度写反了..应该... 阅读全文
posted @ 2017-10-04 18:44 AWCXV 阅读(165) 评论(0) 推荐(0) 编辑
摘要:【题目链接】:http://codeforces.com/problemset/problem/452/D【题意】 洗衣服有3个步骤,洗,干,叠; 有对应的3种洗衣机,分别有n1,n2,n3台,然后每一种洗衣机,一台完成对应的步骤所需的时间为t1,t2,t3; 已知你有k件衣服要洗... 阅读全文
posted @ 2017-10-04 18:44 AWCXV 阅读(221) 评论(0) 推荐(0) 编辑
摘要:【题目链接】:http://codeforces.com/problemset/problem/767/E【题意】 你有m个1元硬币和无限张100元纸币; 你在第i天,需要花费ci元; 同时在第i天,收银员有一个不高兴程度wi; 然后如果它要找零x张纸币y枚硬币的话,它的不高兴值会... 阅读全文
posted @ 2017-10-04 18:44 AWCXV 阅读(234) 评论(0) 推荐(0) 编辑
摘要:【题目链接】:http://codeforces.com/problemset/problem/738/E【题意】 给你一个类似树形的关系; 然后告诉你某个人头顶上有多少个上司numi; 只有father的father才算是它的上司,father的兄弟不算; 然后告诉你所有的人里面... 阅读全文
posted @ 2017-10-04 18:44 AWCXV 阅读(264) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示