
贪心法
ChenKunn
最弱的ECUSTer
展开
-
POJ 3617 Best Cow Line
让我们每次从头和尾取字母,然后重组成字典序最小的字符串。解法:贪心。 不断地从开头或结尾取最小的放到新字符串的末位。但是我们还得处理一种开头和末尾相同的情况,我们必须保证尽早取到最小的。所以我们可以用两个指针分别从开头和末尾逐位比较。那边先出现较小的,就先取那边的。#include<cstdio>#include<iostream>using nam...原创 2018-10-24 19:19:46 · 188 阅读 · 0 评论 -
POJ 3069 Saruman‘s Army
直线上有一些点,每个点距离为R的范围内必须有带有标记的点。需要标记最少的点来实现。解法:贪心显然,我们应该从最左边的点开始标记,然后选择一个在本次标记点覆盖范围外的第一个点。#include<cstdio>#include<algorithm>using namespace std;int n, r, ans;int a[1200];int main...原创 2018-10-24 19:24:50 · 226 阅读 · 0 评论 -
POJ 3252 Fence Repair
把一个木板切割成N块,每次切割的花费是原木板的长度。N块木板的长度给出,求最小花费。这个题需要反过来看。最小和次小的两块木板是最后被切的。。每次都把最小和次小取出,加入ans,然后把两者相加放入堆中。需要注意的是数据的大小用long long, 因为STL默认大根堆,在把数据插入堆中的时候*-1就是小根堆了。#include<cstdio>#include<que...原创 2018-10-24 19:31:21 · 223 阅读 · 0 评论