这道题位于第一章section1.4贪心部分。 题意: 给出N个山峰高度,高度属于[0,100]units;Farmer FJ需要做一些修改,来保证最高高度和最低高度的差值不大于17uints。这个修改包括减小最高山峰和增高最低山峰高度,并且修改x unit的高度要付出x^2的费用。 给出N个山峰的 ...
分类:
其他好文 时间:
2020-01-23 21:13:58
阅读次数:
100
题目链接:https://vjudge.net/problem/UVA-11300 这道题的思路太神了,但很难想到是贪心。 用M表示每个人最终拥有的金币数。 首先假设有四个人。假设1号给2号3枚,2号又给1号5枚,那么实际上1号并没有给2号,而2号给了1号2枚。这样设$x_2$表示2号给了1号$x_ ...
分类:
其他好文 时间:
2020-01-23 19:45:44
阅读次数:
67
介绍前缀树 何为前缀树?如何生成前缀树? 例子:一个字符串类型的数组arrl,另一个字符串类型的数组arr2。arr2中有哪些字符,是arr 1中 出现的?请打印。arr2中有哪些字符,是作为arr 1中某个字符串前缀出现的?请打印。arr2 中有哪些字符,是作为arr1中某个字符串前缀出现的?请打 ...
分类:
编程语言 时间:
2020-01-23 16:44:51
阅读次数:
106
数的划分 将整数n分成k份,且每份不能为空,任意两份不能相同(不考虑顺序)。 例如:n=7,k=3,下面三种分法被认为是相同的。1,1,5; 1,5,1; 5,1,1; 问有多少种不同的分法。 输入:n,k ( 6 using namespace std; define rep(i,n) for ( ...
分类:
编程语言 时间:
2020-01-23 16:43:05
阅读次数:
75
http://codeforces.com/contest/1294/problem/B 大致题意: 一张图上有n个包裹,给出他们的坐标,一个机器人从(0,0)出发,只能向右(R)或向上(U),问能否收集到所有包裹,如果能,给出字典序最小的路径。 最开始当成搜索题了,其实可以排序+贪心写的。 1 # ...
分类:
编程语言 时间:
2020-01-23 14:07:38
阅读次数:
88
每个点贪心找最小的前驱选上,然后分情况: 如果形成一棵树,那么算法结束; 否则对该图缩点,scc之间的边的权值赋值成 用这条边替代原来终点的前驱 的权值,表示换去一条环边,然后做最小树形图即可。 每轮至少缩去一个点,复杂度 $O(n^2+nm)$。 ...
分类:
其他好文 时间:
2020-01-22 23:40:33
阅读次数:
85
题目链接:https://vjudge.net/problem/UVA-11729 一道比较显然的贪心。 我们可以发现如果我们让$a_j$最大的尽可能地往前来交待,那么时间重合地会更多。 一个很明显的贪心策略:按照$j$从大到小排序,记录每一次的$s$(交代的时间)和$s+a_j$(结束的时间),用 ...
分类:
其他好文 时间:
2020-01-22 23:39:12
阅读次数:
72
dijkstra算法是经典的贪心算法。基本的想法是,有两个集合S和E,开始S集合中只有一个起点,E集合中有剩下的其他点。遍历E集合中的所有点,找出与起点距离最近的一个点,将其加入集合S,并用该点去更新起点到其他点的最短路径。 由动图结合上面的思路,我们可以看出,算法的基本框架是: 1 1.初始化 2 ...
分类:
编程语言 时间:
2020-01-22 19:50:13
阅读次数:
75
``` 学了这么长时间的STL库,现在我觉得是有必要对过去的题目和所遇到的问题做一下整理了,以便于之后更好的展开练习: 一、 为什么要用STL库? 1、 简单粗暴(省事)。 2、 便于解决复杂的问题(在贪心题目中显而易见)。 3、 使其思路更加广泛,解决问题的角度更多。 二、 怎么用STL库? 1、... ...
分类:
编程语言 时间:
2020-01-21 21:55:21
阅读次数:
76
题解 贪心。 若 0 的不在它的位置,那么 0 占的那个元素的位置,就和那个元素交换。 若 0 在它的位置,找一个没有归位的元素与 0 交换。 代码 #include<bits/stdc++.h> using namespace std; int arr[100005]; int main() { ...
分类:
其他好文 时间:
2020-01-21 19:57:19
阅读次数:
52