排序检索
deepquiet
这个作者很懒,什么都没留下…
展开
-
UVA 10420(排序检索)
题目:In Act I, Leporello is telling Donna Elvira about his master’s long list of conquests: “This is the list of the beauties my master has loved, a list I’ve made out myself: take a look, read it wit原创 2015-07-27 17:54:14 · 441 阅读 · 0 评论 -
Building designing
题意: 按照绝对值大小从小到大,且必须正负值间隔,问最长序列的长度 思路: 有flag控制正负间隔,排序是按照绝对值排序 代码:#include #include #include using namespace std; int a[500005]; int cmp(int a, int b) { return abs(a) > abs(b); } int main() { int原创 2016-02-03 18:02:42 · 459 阅读 · 0 评论 -
Children's Game
题意: 将输入的数串连成最大值。 思路: 直接按照字典集排序是不行的,比如99字典序小于991,但是99991大于99199,所以比较两个串相加后的字典序即可 代码: #include #include #include #include #include using namespace std; int cmp(string a, string b) { return a+b > b原创 2016-02-03 20:22:58 · 411 阅读 · 0 评论 -
The Bus Driver Problem
题意: 一天之内需有夜班与日班,在不超过d的时长内是没有加班费的,超过每小时r,求最少加班费. 思路: 最小与最大组合即可. 代码: #include #include #include using namespace std; const int maxn = 100+5; int day[maxn], night[maxn], n, d, r; int cmp(int a, int原创 2016-02-04 11:33:19 · 284 阅读 · 0 评论 -
Songs
题意: 给出n首歌的频率和时长,求fs(i)ls(j)最小.即:b[i]=f[i]*(l[1]+...+l[i]),sum=b[1]+..+b[n],求使sum最小的歌曲排列方式.然后输入碟中位于s的歌,输出歌的id号 思路: 主要是排序,排序的技巧是a.l*b.f 代码: #include #include #include #include using namespace std;原创 2016-02-04 17:36:43 · 287 阅读 · 0 评论 -
uva657
题意:给一张有很多个(至少一个)骰子的图片,判断骰子上的点数。这张图片有三种像素组成,分别是 ' . '表示背景, ' * '表示骰子, ' X '骰子中的点;两个像素共用一条边表示连接,而共用一角却不表示连接。 这道题的关键是在判断完是'X'后要立马接着往下判断是否有'*',应为要一条路搜到底,否则可能有遗漏 #include #include #include #include #incl原创 2017-03-23 16:41:58 · 203 阅读 · 0 评论 -
uva10905
题意,给n个数字,将它们重新排序得到一个最大的数字,如123 456 789 拼为 789456123 最大 代碼: #include #include #include #include #include using namespace std; int cmp(string a, string b) { return a+b>b+a; } string s[55]; int m原创 2017-04-04 16:53:01 · 275 阅读 · 0 评论