采摘西瓜 oi题采摘西瓜Time Limit:1030MS Memory Limit:65536KDescription 佳儿爷爷经常给她讲故事,某天就讲了一个采摘西瓜的故事(因为她闹着要买...).某年某村的瓜农把一个个西瓜放在象一条直线的
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/20 05:48:50
采摘西瓜 oi题采摘西瓜Time Limit:1030MS Memory Limit:65536KDescription 佳儿爷爷经常给她讲故事,某天就讲了一个采摘西瓜的故事(因为她闹着要买...).某年某村的瓜农把一个个西瓜放在象一条直线的
采摘西瓜 oi题
采摘西瓜
Time Limit:1030MS Memory Limit:65536K
Description
佳儿爷爷经常给她讲故事,某天就讲了一个采摘西瓜的故事(因为她闹着要买...).某年某村的瓜农把一个个西瓜放在象一条直线的水库大坝上,叫本村的小朋友去大坝搬西瓜,谁的西瓜搬走得多,谁就是胜者.搬西瓜必须遵守的原则是:西瓜一个一个搬,可以从任何位置开始搬运,按西瓜所摆放的位置,只能往后取西瓜,取走的西瓜重量不得大于前面已经搬走西瓜的重量(除第一个西瓜).你能知道他们最多一次能搬走多少个西瓜吗?
Input
第一行为n(小于10000),西瓜的个数,第二行为n个正整数(小于30000),表示n个西瓜的重量(以克为单位),各个之间用一个空格隔开
Output
最多一次能搬走的西瓜个数
Sample Input
7
5 4 7 3 2 2 1
Sample Output
6
Source
我要正确的 pascal源代码 加油哦
采摘西瓜 oi题采摘西瓜Time Limit:1030MS Memory Limit:65536KDescription 佳儿爷爷经常给她讲故事,某天就讲了一个采摘西瓜的故事(因为她闹着要买...).某年某村的瓜农把一个个西瓜放在象一条直线的
NLOGN的最长不下降子序列
最长不下降子序列2007-03-01 09:381.正常方法,动态规划,n^2
2.基于二分搜索的优化 nlogn
一个一个读入(正反都可以),然后维护一个序列res,res[i]表示长度为i的最长不下降子序列的开头(反做)/结尾(正做)的最优情况(正做是最小,反做是最大),对于每一个数字list[i],找到一个合适的位置,覆盖或者插入.
原理,使基于每一个阶段,事实上能且只能对一个状态发生优化,也就是,事实上每次虽然有n个决策,但是真正能被转移,也就是符合转移条件(最优性质)的决策只发生一次,而这个决策可以通过二分检索找到,nlogn.
例如 3 9 4 7 8 7 8 9 反做
s1 ins-9
res 9 0 0 0 0 0 0 0
s2 ins-8
res 9 8 0 0 0 0 0 0
s3 ins-7
res 9 8 7 0 0 0 0 0
s4 ins-8
res 9 8 8 0 0 0 0 0
s5 ins-7
res 9 8 8 7 0 0 0 0
s6 ins-4
res 9 8 8 7 4 0 0 0
s7 ins-9
res 9 9 8 7 4 0 0 0
s8 ins-3
res 9 9 8 7 4 3 0 0
可见,左后的最长序列长度为6,使以3开头的,至于具体输出,可以通过记录父亲结点的方法记录路径
事实上的答案是 3 4 7 7 8 9 或者 3 4 7 8 8 9 etc...
3、一些思考
注意到,倒做加记录,最后是有字典序的,也就是会搜出字典顺序最大的那组解,反做假记录,使最小的那组解
贴个程序
procedure midsearch(num:longint);
var top,bot,mid:longint;
begin
top:=0;bot:=nk+1;
if bot-top1 do
begin
mid:=(top+bot) div 2;
if list[num]
西瓜营养丰富,中医认为,西瓜性寒味甘,具有清热解暑、除烦止渴、利小便等功效,因此是夏季的最佳水果。但是吃西瓜时,也有一些需要注意的问题。
一、不要吃得过多,否则伤脾胃,引起咽喉炎。西瓜是生冷之品,吃多了易伤脾胃,所以,脾胃虚寒、消化不良、大便滑泄者少食为宜,多食会腹胀、腹泻、食欲下降,还会积寒助湿,导致疾病。一次食入西瓜过多,西瓜中的大量水分会冲淡胃液,引起消化不良和胃肠道抵抗力下降。 ...
全部展开
西瓜营养丰富,中医认为,西瓜性寒味甘,具有清热解暑、除烦止渴、利小便等功效,因此是夏季的最佳水果。但是吃西瓜时,也有一些需要注意的问题。
一、不要吃得过多,否则伤脾胃,引起咽喉炎。西瓜是生冷之品,吃多了易伤脾胃,所以,脾胃虚寒、消化不良、大便滑泄者少食为宜,多食会腹胀、腹泻、食欲下降,还会积寒助湿,导致疾病。一次食入西瓜过多,西瓜中的大量水分会冲淡胃液,引起消化不良和胃肠道抵抗力下降。
二、感冒初期不要吃西瓜,否则会使感冒加重或延长治愈的时间。无论是风寒感冒还是风热感冒,其初期都属于表症,应采用使病邪从表而解的发散办法来治疗。中医认为,表未解不可攻里,否则会使表邪入里,病情加重。在感冒初期,病邪在表之际,吃西瓜就相当于服用清里热的药物,会引邪入里,使感冒加重或延长治愈的时间。不过,当感冒加重出现了高热、口渴、咽痛、尿黄赤等热症时,在正常用药的同时,可吃些西瓜,有助于感冒的痊愈。
三、不要吃打开过久的西瓜。气温高,西瓜打开过久易变质、繁殖病菌,食用了会导致肠道传染病。因此,吃西瓜应注意选择成熟的新鲜西瓜。
四、肾功能不全者不要吃。短时间内大量吃西瓜,使体内水分增多,超过人体的生理容量。而肾功能不全者,其肾脏对水的调节能力大大降低,对进入体内过多的水分,不能调节及排出体外,致血容量急剧增多,容易因急性心力衰竭而死亡。
五、口腔溃疡者不要吃。中医认为,口腔溃疡的主要原因是阴虚内热,虚火上扰,灼伤血肉脉络。西瓜有利尿作用,口腔溃疡者若多吃西瓜,会使体内所需正常水分通过西瓜的利尿作用排出一些,这样会加重阴液偏虚的状态。阴虚则内热益盛,加重口腔溃疡。
六、糖尿病患者要少吃。西瓜含有约5%的糖分,糖尿病患者吃西瓜过量,还会导致血糖升高、尿糖增多等后果,严重的还会出现酮症酸中毒昏迷反应。如果一次吃25-50克西瓜,对糖尿病人影响不大,所以糖尿病人吃西瓜时要注意适量。
收起
最长不上升子序列问题....
就是最长非降子序列问题....(这个您会吗?是动态规划算法解决的经典问题....)
但是这题数据量有些大,似乎要用到平衡树....
Dp
最非升子序列,由于数据有点大,可以用二分优化到O(NlogN)
看了半天看不明白