
51nod
xgogoforit
这个作者很懒,什么都没留下…
展开
-
51nod贪心学习例子1
输入输入一个字符串S(S的长度 <= 10000),S中没有除字母外的其他字符。输出由你将1-26分配给不同的字母,使得字符串S的完美度最大,输出这个完美度。输入示例dad输出示例77找出字符串中各个字符出现的次数,排序之后,从大到小将26到1赋给各各字符(如果有26个的话)。#include<stdio.h> #include<string.h> #include <stdlib.h>char b原创 2015-12-14 12:39:28 · 298 阅读 · 0 评论 -
51nod贪心例子2
有若干个活动,第i个开始时间和结束时间是[Si,fi),只有一个教室,活动之间不能交叠,求最多安排多少个活动? http://www.51nod.com/tutorial/course.html#!courseId=14分析之后以结束之间最早的活动作为贪心的标准,越早结束的活动越放在前面,将得到的数据经过将结束时间排序(同时也把开始时间随着结束时间排序),从第二组数据开始假如本组的开始时间大于前一原创 2015-12-14 12:46:59 · 398 阅读 · 0 评论 -
51nod贪心例子活动安排问题二
有若干个活动,第i个开始时间和结束时间是[Si,fi),活动之间不能交叠,要把活动都安排完,至少需要几个教室?分析:能否按照之一问题的解法,每个教室安排尽可能多的活动,即按结束时间排序,再贪心选择不冲突的活动,安排一个教室之后,剩余的活动再分配一个教室,继续贪心选择……反例: A:[1,2) B:[1,4) C:[5,6) D:[3,7)已经按结束时间排好顺序,我们会选择 教室1: A C 教原创 2015-12-15 23:26:08 · 809 阅读 · 0 评论 -
51nod贪心例子独木舟问题
n个人,已知每个人体重。独木舟承重固定,每只独木舟最多坐两个人,可以坐一个人或者两个人。显然要求总重量不超过独木舟承重,假设每个人体重也不超过独木舟承重,问最少需要几只独木舟?使用贪心,先安排最重的与最轻的上船,假如此时独木舟没有超重,那么此时只需要一辆船,否则把最终的安排上船,然后把次重的人与最轻的同时安排上船,依次下去 c++ #include<cctype> #include<algor原创 2015-12-18 21:45:48 · 669 阅读 · 0 评论 -
51nod最大子段和问题
N个整数组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的连续子段和的最大值。当所给的整数均为负数时和为0。 例如:-2,11,-4,13,-5,-2,和最大的子段为:11,-4,13。和为20。 c++#include<iostream> #include<cstdio> #include<cstring> #include原创 2015-12-27 23:25:15 · 399 阅读 · 0 评论