hdu--1231&&1003--dp

这2题 可以放一起  1231可以算1003的进化版...

这2题 我用的方法一样 O(1)空间复杂度 O(n)时间复杂度 ... 这是我自己的说法 错了告知我=-=

其实 1231你要是开一个数组的话 就和1003写的时候差不多了 当然那就最好不要开了

    touch me 1st                  touch me 2nd

1003的代码  老早写的。。。

 1 #include <iostream>
 2 using namespace std;
 3
 4 const int inf = 0x3f3f3f3f;
 5 int main()
 6 {
 7     int t , n , i , j;
 8     bool flag;
 9     int num , sum , mmax , st , end;
10     while( ~scanf("%d",&t) )
11     {
12         flag = false;
13         for( int k = 1 ; k<=t ; k++ )
14         {
15             sum = 0;
16             scanf( "%d",&n );
17             mmax = -inf;
18             j = 1;
19             for( int i = 1 ; i<=n ; i++ )
20             {
21                 scanf( "%d",&num );
22                 sum += num;
23                 if( sum>mmax )
24                 {
25                     mmax = sum;
26                     st = j;
27                     end = i;
28                 }
29                  if( sum<0 )
30                 {
31                     sum = 0;
32                     j = i + 1;
33                 }
34             }
35             printf( "Case %d:\n%d %d %d\n%s",k,mmax,st,end,k>=t?"":"\n" );
36         }
37     }
38     return 0;
39 }

 1 #include <iostream>
 2 using namespace std;
 3
 4 int main()
 5 {
 6     cin.sync_with_stdio(false);
 7     int n , sum , max , st , end , temp , a, b , num;
 8     while( cin >> n && n )
 9     {
10         sum = 0;
11         max = -1;
12         for( int i = 0 ; i<n ; i++ )
13         {
14             cin >> num;
15             if( i==0 )
16                 a = num;
17             else if( i==n-1 )
18                 b = num;
19             sum += num;
20             if( sum>=0 && sum-num<=0 )
21             {
22                 temp = num;
23             }
24             if( sum>max )
25             {
26                 max = sum;
27                 st = temp;
28                 end = num;
29             }
30             if( sum<0 )
31             {
32                 sum = 0;
33             }
34         }
35         if( max == -1 )
36         {
37             cout << 0 << " " << a << " " << b << endl;
38         }
39         else
40         {
41             cout << max << " " << st << " " << end << endl;
42         }
43     }
44     return 0;
45 }

1231的最重要的是 max初始值为-1  而且这题的这种解法 一定要是-1 起初用0 走了点弯路

today:

  推荐一篇来自一个的文章 <<薄荷>>

  

那时候喜欢她的感觉,怎么说呢,轻轻淡淡的。她坐在教室里一点儿都不显眼,常常 坐的是第五排第四个位置,前三个位置是她的室友。上课前她们围在一起说话,细细碎碎,像撒在泥地上的小白米粒。轮到她说话时,嘴角浅浅的酒窝就露出来,声 音小小的,说着说着嘴角一抿,拿眼去认真地看搭话的人,听到一半时,她的眼神会有些飘忽,嘴角依旧有微茫的笑痕;上课时,语言学、古代文学、现代文学、戏 剧研究,无论什么课程,她都一字一字在笔记本上抄写老师的讲话,老师提问的时候,却从来不会举手回答。其他被叫起来的同学回答时,她把中性笔搁在笔记本边 上,眼睛扫向窗外,齐耳的发梢被天花板上的风扇吹得一闪一闪,她拢拢头发,又拿起笔来做笔记。

而我热爱回答问题,老师的提问一落下,我就举起手。后来同学们养成了习惯,只要老师一提问,他们都会转头看我。次数多了,我有些发窘,担心自己这样 太爱出风头了。有一次是古代文学课,老师问孟浩然在襄阳写了哪些诗,教室一阵翻书声,我知道答案,但我把手扣在桌子上,就是不举起来。这时候,教室陷入一 阵尴尬的沉默之中。老师习惯了我举手,我忽然这样,他也略显尴尬。有同学拿笔捅我:“你快举啊!这问题只有你能回答啊。”我低头看自己的笔记,心里很矛 盾,既想回答又有些来气:为什么他们都不能回答一下呢?“童玲,你来回答一下。”老师从花名册里随手点了一个名字,我抬头看去,她在位置上微微一愣,边上 室友推了一下她:“是叫你呢!”她这才慌忙站起来,手中紧拿着中性笔,“嗯,这个,呃……”另一只手频频拢头发,脸上一点点泛起了红晕。见此,我立马举起 手来,老师像是得了救一般,对童玲说:“好,你先坐下。这位同学你来回答一下。”童玲向我看了一眼,坐下了。

上晚自习时,我坐在后面看从图书馆借来的小说,她跟她的室友们远远在前排看英语四级题。她穿淡青色薄外套,耳朵边新戴一个粉绿发卡。看到中途累了, 我去教学楼外面的跑道散步。我们的大学在山谷中,月亮停在教学楼后的山梁上,风吹来山间松林隐隐的浩荡声。一个人在外面走,不免有些萧索之气。正抬头去看 天上几片薄薄的云,她的声音过来了:“你在看什么?”我转身看她,就站在我的后面。我指着天空看:“你看那云朵多好看。”她笑吟吟地看看我,又看看天: “嗯,是好看。”一时无话,我便找话说:“你是准备回宿舍吗?”她说:“没有。我打算去超市买个笔记本。你要不要陪我去?”

超市在老校区,沿着山脚的路走,山上清脆震耳的虫鸣声,路对面湖畔情侣的嬉笑声,还有自行车从身边骑过的叮当声,在我们的周遭响起。她走在我的右手 边,不声不响,我也一时找不出话来说。“谢谢你啊。”她忽然抬头说了一句。我摇摇手说:“没什么,反正我也要散步。”她笑笑说:“我不是说这个,我是说上 课回答问题的事情。”我说:“那有什么,本来就是很简单的问题。”她顿了一下:“是啊,我都不会。”我这才发现自己说错了话,忙着解释:“别误会啊,我没 有那个意思。”她这次笑得肩膀都抖动起来,“你太认真了。”见她没有生气,我便放下心来。她个子比我矮,大概到我肩膀高吧,她一低头,我能看到她细细的脖 颈露在路灯的灯光下,蓦的让人起了一阵怜惜之情,手很想伸过去把她拉到自己的怀里来。我被这些纷乱的想法扰得分心,以至于她的问话我听得不清楚。“我是说 你是怎么知道这么多作家的?”她又一次重复了一遍她的问题,“我觉得你很厉害,老师都在夸你知识面广呢。”被她这一夸,我感觉脸都在发烫。

回宿舍后躺在床上,我一直在想她。熄灯后,室友们照例要聊一会儿,说到班上的女生,总是围绕那几个长得漂亮的,没有人提到童玲。也许在室友们的眼 中,童玲既不漂亮也无鲜明性格,完全可以忽略不计。这让我很放心,没有人说起她的任何好,当然也没有人说起她的任何不好。她淡淡的在众多女生中间,像是一 缕薄荷的气息,唯有我才能捕捉到吧。同时我又觉得那种怜惜的感觉愈发强烈了。我很想知道她更多的一些消息。可是我怎么好开口去问其他人呢?我常常在路上碰 到她,她英语四级考过了,又要考计算机二级,她跟她的室友们手挽手往校外财校的计算机培训班走,见我笑一笑点点头,我也忙着笑一笑点点头,再无机会多说一 句话。教室的晚自习她也不去了,她肯定是在机房做习题。我在教室看书,再看看前面她常坐的位置,已经是其他的女孩在坐着了。

有打算要考研的同学在学校附近的村子里租了个房子,邀请我过去一起包饺子吃。我买了些水果带过去时,那房子里已经坐满了我们班上打算考研的人,我一 眼就看到了她。她是要考研的,这我知道,专业是语言学,准备报考的大学是个名牌大学,很难考。她的英语六级也过了,计算机二级也过了,她从进大学,就想得 很清楚。不像我,不愿意考这些证件,只想胡乱地看书。那一刻我突然有些后悔:如果我也像她一样,也报考这些培训班,没准就能跟她在一起多一点儿时间。大家 把桌子抬到院子里,和面的和面,擀面皮的擀面皮,剁馅儿的剁馅儿,我和她都负责包饺子。

饺子实在难包,我包了几个馅儿都露了出来,她那边已经把包好的饺子整整齐齐放在锅盖上了。她忽然凑了过来,脸离我特别近,我吓了一跳,微微往边上躲 了躲。她没有察觉到,手拿着我包的饺子看了看说:“你包得不对,我来教你。”我小心地凑过去,眼睛余光中有她的脸庞,能闻到她身上若有若无的香味,她小小 的鼻头上沾了面粉,我几乎要抬起手来去帮她抹掉,但是没有。我的心跳得很厉害,很担心她能听到,身子又往后让了让。“好,就是这样的,你学会了没?”她的 脸一下子离得远了,她的眼睛看着我,我忙着点头,她又淡淡一笑,继续包她的饺子。虽然教了一遍,我还是完全不会。她拿起一块饺子皮,让我再看着。她手指灵 巧地捏起饺子皮,手指甲上涂着粉红色的指甲油,我学着她包了一个,果然像回事儿,她点点头:“你还是蛮聪明的嘛。”我笑着回敬一句:“还是师傅会教。”

饺子下锅煮了,等着也是等着,大家坐在院子里聊天。秋日的阳光晒在头上,暖意融融的。屋后泡桐树上,几只鸟啾啾的叫个不停。郁色山岭上空,卧着丰盛 的白云。她坐在一群女同学中间,眯着眼睛听人家说话,嘴角微微翘起,含着一丝似有似无的笑意。大概是感觉到我在看她,她冲我笑笑,又去看说话的人。我的心 一阵乱跳,不知道她这一笑有无特殊的含义。说话的人忽然问她:“你男朋友在师大怎么样了?你不是要考到他那里去吗?”她皱起眉头说:“我也说不清楚,他那 边一直说帮我联系老师的。”说话的人点点头说:“最好能把师大的教课教材和笔记都借过来。”我已经不大听得进去她后来是怎么回应的了。饺子熟了,大家纷纷 拿起碗吃起来。我慢慢地吃碗里的饺子,十分烫嘴,只能一点点地啃。她坐在靠门的位置,嘬起嘴巴吹滚烫的面汤,脸罩在热气之中,一时间看不清表情。

大四上半期的课程,她几乎都没来上课,一心在考研教室备考。有时候能在食堂碰到她,她拿着搪瓷碗一边扒饭一边看考研英语词汇字典。我从她身后默默走 过,不敢去打扰她。每次打水时,都能见到她的开水瓶放在开水房外面,瓶身上用涂改液写着她姓名拼音的首字母:“TL”。想这些做什么呢,很多次我想也许我 该庆幸自己没有向她表白什么,这样我们都不会尴尬。她在我心中淡淡地像是空气一样盘旋着,并不会让我难受,只是有一些怅然而已。考研结束后,宿舍的室友们 终于第一次提到了童玲,那是也在考研的室友说的:“童玲的初试没过。”就这么一句,大家没有再次停留多说几句,又说起其他没有考过的同学。我躺在床上,忽 然很想立马起床去找她,要不给她打个电话也好,但我知道这是徒劳的。我能跟她说什么呢?

考研的日子一过,很快我们都要大学毕业了,找工作的忙着找工作,考研过初试的人忙着备考复试。但每次校园招聘会上我并没有见到童玲,她像是消失了一 般。碰到她室友,装着漫不经心地问起,回答我说是去她男朋友的学校了。我想也许我再也见不到她了吧。六月份到了,毕业前一周,班上组织去校外的酒楼吃散伙 饭。那时候我已经在一家广告公司找了一份广告文案的工作,晚上下班赶过去,大家已经开吃了。菜都没怎么吃,大家都抢着敬酒。喝完之后,还没有说几句话,都 哭成一团。一想到这些同学,马上都要各奔东西,我自己也禁不住眼泪涌了上来。转头去看其他桌上的同学时,我看见坐在室友中间的童玲。她头发留长了,披在肩 头,脸变得瘦而尖。她把头靠在她室友的肩头,脸上红彤彤的,泪珠从脸庞上滑落,也不拿手去擦,任凭它滑到下巴处。我心里忽然起了一阵猛烈的痛楚感。很快有 同学来抱着我说各自珍重的话,我一个劲儿地点头,不敢再去看她那边。

喝完酒,我们在校园里踉跄着脚步,大声地唱歌,没有老师来干涉我们。天上繁星像是煮沸了一般,直往我眼睛里钻。我吐了几次,又一次走在路上。风里有 树木的清香气,我大口地呼吸着。把女同学们送到女生宿舍,我们不再像往日那么矜持,男女同学互相拥抱彼此。我抱起了很多女同学,她们又一次哭起来。等到和 童玲拥抱时,她抬头看我,还是似有似无的微笑,我把她狠狠地拥到我怀里来,手臂环抱她瘦弱的肩膀。她的身子是热的,还有酒气。她的手在我肩头拍了拍,“记 得以后常联系哦。”我说:“嗯。”我松开了手,又问了一句:“你找好工作了吗?”她笑笑说:“我准备再考一年。”我点点头:“肯定能行的。”她说“谢 谢”。我还想多说些什么,她的眼睛已经移向了下一个男生,和他相互抱了抱,同样说了一声:“记得以后常联系哦。”手在他的肩头拍了拍。

-------------

hdu--1231&&1003--dp,布布扣,bubuko.com

时间: 2024-10-11 03:55:47

hdu--1231&&1003--dp的相关文章

HDU 1231 最大连续子序列 --- 入门DP

HDU 1231 题目大意以及解题思路见: HDU 1003题解,此题和HDU 1003只是记录的信息不同,处理完全相同. /* HDU 1231 最大连续子序列 --- 入门DP */ #include <cstdio> #include <cstring> int dp[10005]; int main() { #ifdef _LOCAL freopen("D:\\input.txt", "r", stdin); #endif int n

HDU 1231 最大连续子序列 DP题解

典型的DP题目,增加一个额外要求,输出子序列的开始和结尾的数值. 增加一个记录方法,nothing special. 记录最终ans的时候,同时记录开始和结尾下标: 更新当前最大值sum的时候,更新开始节点. const int MAX_N = 10001; long long arr[MAX_N]; int N, sta, end; long long getMaxSubs() { long long sum = 0, ans = LLONG_MIN; int ts = 0; for (int

HDU 1231——最大连续子序列(DP)

最大连续子序列 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 18603    Accepted Submission(s): 8268 Problem Description 给定K个整数的序列{ N1, N2, ..., NK },其任意连续子序列可表示为{ Ni, Ni+1, ..., Nj },其中 1 <= i <= j

HDU 1231:最大连续子序列(DP)

最大连续子序列 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 18461    Accepted Submission(s): 8202 Problem Description 给定K个整数的序列{ N1, N2, ..., NK },其任意连续子序列可表示为{ Ni, Ni+1, ..., Nj },其中 1 <= i <= j

hdu 4734 数位dp

http://acm.hdu.edu.cn/showproblem.php?pid=4734 Problem Description For a decimal number x with n digits (AnAn-1An-2 ... A2A1), we define its weight as F(x) = An * 2n-1 + An-1 * 2n-2 + ... + A2 * 2 + A1 * 1. Now you are given two numbers A and B, plea

hdu 3853 概率DP 简单

http://acm.hdu.edu.cn/showproblem.php?pid=3853 题意:有R*C个格子,一个家伙要从(0,0)走到(R-1,C-1) 每次只有三次方向,分别是不动,向下,向右,告诉你这三个方向的概率,以及每走一步需要耗费两个能量,问你走到终点所需要耗费能量的数学期望: 回头再推次,思想跟以前的做过的类似 注意点:分母为0的处理 #include <cstdio> #include <cstring> #include <algorithm>

HDU 4968 (水dp 其他?)

1 #include <cstdio> 2 #include <cstring> 3 #include <algorithm> 4 #include <vector> 5 #include <map> 6 using namespace std; 7 const int inf = 0x3f3f3f3f; 8 const int MAX = 200+10; 9 double GPA[10],dp1[20][30000],dp2[20][30000

[ACM] hdu 1231 最大连续子序列 (动规复习)

最大连续子序列 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 17687    Accepted Submission(s): 7828 Problem Description 给定K个整数的序列{ N1, N2, ..., NK },其任意连续子序列可表示为{ Ni, Ni+1, ..., Nj },其中 1 <= i <= j

hdu 4123 树形DP+RMQ

http://acm.hdu.edu.cn/showproblem.php?pid=4123 Problem Description Bob wants to hold a race to encourage people to do sports. He has got trouble in choosing the route. There are N houses and N - 1 roads in his village. Each road connects two houses,

HDU 3853 概率dp

LOOPS Time Limit: 15000/5000 MS (Java/Others)    Memory Limit: 125536/65536 K (Java/Others) Total Submission(s): 2337    Accepted Submission(s): 951 Problem Description Akemi Homura is a Mahou Shoujo (Puella Magi/Magical Girl).Homura wants to help he