随笔分类 - 贪心
摘要:题目传送门 过了好久,终于重新开始写博客了。。。 这是一道二进制trie树的模板题。 二进制trie树,理解一下就是一颗二叉树,左右儿子为0或1。 然后每插入一个数就进行一次Find操作。 Find:对于一个数x,我们在trie上总是走x在二进制下第i位的相反的那个节点。(当存在此节点时) Code
阅读全文
摘要:总题面传送门 这次考试只过了3题,前三题题目难度并不大,但是第三题的代码细节卡了我两个半小时(基本上整场考试),所以以后要合理把握时间,注意把握代码细节,并更加完善我的代码风格,使其更加简练。(赛外话)。 A:较简单的模拟题,但是注意对于刚开始的航班不需要S*2。 B:贪心题。显然我们一定会先将Si
阅读全文
摘要:题目传送门 这道题可以用C++的random_shuffle屮过去。 random数列插入顺序,每次都插入数值和最小的那一组。 #include <cmath> #include <cstdio> #include <cstring> #include <algorithm> using names
阅读全文
摘要:Problem A:题目传送门 题目大意:给你N家店,每家店有不同的价格卖苹果,ai元bi斤,那么这家的苹果就是ai/bi元一斤,你要买M斤,问最少花多少元。 题解:贪心,找最小的ai/bi。 #include <cstdio> using namespace std; double minn=2e
阅读全文
摘要:题目传送门 由题目可得,在一条路上有N个加油站,在距离终点a[i](细节)的位置上,你需要通过长度为L的路,油箱的容量是无限的,但是初始只有P点油,经过每个加油站时可以选择加b[i]的油,问最少加油几次可以到达终点。 可以看出经过每一个加油站时可以有两个选择:加油或不加油,但过去了就不能回来。 假如
阅读全文
摘要:题目传送门 这是一道贪心的问题。 总体做法是这样的:先按照报废的快慢从小到大SORT一遍,优先修报废快的。同时开一个大根堆(C++的朋友可以用priority_queue),用来记录已经修了的建筑的耗时大小。 在优先修建筑的时候,如果在当前所用的时间加上修的时间超过了报废时间了的话,就找出大根堆的T
阅读全文
摘要:WZRY 为了排位赛的Cjj神,最近耗尽气力来打WZRY。 Cjj神最近有N局预约的排位赛,其中第i局需要耗时Li的时间。因为浓浓的Gay情,Cjj神不能改变这些排位赛的的顺序。作为一个很有(mei)自制力的人,Cjj神计划用M+1天打完N局,为了能够活着见到第M+2天的太阳,他希望耗时最长的一天最
阅读全文
摘要:最短路径例题 今天特地学习了Dijkstra的堆优化(主要是慕名已久)。 我们需要一个堆来记录[编号,到编号这个点的最短路径值(当然只是当前的)] 与原来的Dijkstra操作基本一致,主要有以下几点: 1.将起点放入堆中 2.开始while循环 3.取出堆顶 4.如果已经拓展过就continue
阅读全文