﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-让JAVA翱翔天地之间-随笔分类-acm</title><link>http://www.blogjava.net/Person/category/53292.html</link><description>来客请点评下,互相交流学习经验,大家互相帮助 .</description><language>zh-cn</language><lastBuildDate>Wed, 01 May 2013 19:54:15 GMT</lastBuildDate><pubDate>Wed, 01 May 2013 19:54:15 GMT</pubDate><ttl>60</ttl><item><title>HDU 1506 最大矩阵面积问题[DP]</title><link>http://www.blogjava.net/Person/archive/2013/05/01/398630.html</link><dc:creator>天YU地___培生，代码人生 </dc:creator><author>天YU地___培生，代码人生 </author><pubDate>Wed, 01 May 2013 15:19:00 GMT</pubDate><guid>http://www.blogjava.net/Person/archive/2013/05/01/398630.html</guid><wfw:comment>http://www.blogjava.net/Person/comments/398630.html</wfw:comment><comments>http://www.blogjava.net/Person/archive/2013/05/01/398630.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/Person/comments/commentRss/398630.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Person/services/trackbacks/398630.html</trackback:ping><description><![CDATA[<h1 style="text-align: center; line-height: normal; text-transform: none; font-variant: normal; font-style: normal; text-indent: 0px; font-family: 'Times New Roman'; white-space: normal; letter-spacing: normal; color: rgb(26,92,200); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">Largest Rectangle in a Histogram</h1><font style="text-transform: none; text-indent: 0px; font: medium 'Times New Roman'; white-space: normal; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px"><strong><span style="font-family: Arial; color: green; font-size: 12px; font-weight: bold">Time Limit: 2000/1000 MS (Java/Others)&nbsp;&nbsp;&nbsp;&nbsp;Memory Limit: 65536/32768 K (Java/Others)<br />Total Submission(s): 7038&nbsp;&nbsp;&nbsp;&nbsp;Accepted Submission(s): 1982<br /></span></strong></font><br style="text-transform: none; text-indent: 0px; font: medium 'Times New Roman'; white-space: normal; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" /><br style="text-transform: none; text-indent: 0px; font: medium 'Times New Roman'; white-space: normal; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" />
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-title.png); padding-bottom: 0px; text-transform: none; background-color: transparent; text-indent: 0px; padding-left: 14px; padding-right: 14px; font: bold 18px Arial; white-space: normal; background-position: 0% 100%; letter-spacing: normal; height: 38px; color: rgb(124,169,237); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_title" align="left">Problem Description</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-content.png); text-align: left; padding-bottom: 0px; text-transform: none; text-indent: 0px; margin: 0px; padding-left: 20px; padding-right: 20px; font: 14px 'Times New Roman'; white-space: normal; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_content">A histogram is a polygon composed of a sequence of rectangles aligned at a common base line. The rectangles have equal widths but may have different heights. For example, the figure on the left shows the histogram that consists of rectangles with the heights 2, 1, 4, 5, 1, 3, 3, measured in units where 1 is the width of the rectangles:<br /><img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" alt="" src="http://acm.hdu.edu.cn/data/images/1506-1.gif" /><br />Usually, histograms are used to represent discrete distributions, e.g., the frequencies of characters in texts. Note that the order of the rectangles, i.e., their heights, is important. Calculate the area of the largest rectangle in a histogram that is aligned at the common base line, too. The figure on the right shows the largest aligned rectangle for the depicted histogram.</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-bottom.png); text-transform: none; text-indent: 0px; margin: 0px; font: medium 'Times New Roman'; white-space: normal; background-position: 0% 0%; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_bottom">&nbsp;</div><br style="text-transform: none; text-indent: 0px; font: medium 'Times New Roman'; white-space: normal; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" />
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-title.png); padding-bottom: 0px; text-transform: none; background-color: transparent; text-indent: 0px; padding-left: 14px; padding-right: 14px; font: bold 18px Arial; white-space: normal; background-position: 0% 100%; letter-spacing: normal; height: 38px; color: rgb(124,169,237); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_title" align="left">Input</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-content.png); text-align: left; padding-bottom: 0px; text-transform: none; text-indent: 0px; margin: 0px; padding-left: 20px; padding-right: 20px; font: 14px 'Times New Roman'; white-space: normal; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_content">The input contains several test cases. Each test case describes a histogram and starts with an integer n, denoting the number of rectangles it is composed of. You may assume that 1 &lt;= n &lt;= 100000. Then follow n integers h1, ..., hn, where 0 &lt;= hi &lt;= 1000000000. These numbers denote the heights of the rectangles of the histogram in left-to-right order. The width of each rectangle is 1. A zero follows the input for the last test case.</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-bottom.png); text-transform: none; text-indent: 0px; margin: 0px; font: medium 'Times New Roman'; white-space: normal; background-position: 0% 0%; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_bottom">&nbsp;</div><br style="text-transform: none; text-indent: 0px; font: medium 'Times New Roman'; white-space: normal; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" />
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-title.png); padding-bottom: 0px; text-transform: none; background-color: transparent; text-indent: 0px; padding-left: 14px; padding-right: 14px; font: bold 18px Arial; white-space: normal; background-position: 0% 100%; letter-spacing: normal; height: 38px; color: rgb(124,169,237); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_title" align="left">Output</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-content.png); text-align: left; padding-bottom: 0px; text-transform: none; text-indent: 0px; margin: 0px; padding-left: 20px; padding-right: 20px; font: 14px 'Times New Roman'; white-space: normal; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_content">For each test case output on a single line the area of the largest rectangle in the specified histogram. Remember that this rectangle must be aligned at the common base line.</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-bottom.png); text-transform: none; text-indent: 0px; margin: 0px; font: medium 'Times New Roman'; white-space: normal; background-position: 0% 0%; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_bottom">&nbsp;</div><br style="text-transform: none; text-indent: 0px; font: medium 'Times New Roman'; white-space: normal; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" />
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-title.png); padding-bottom: 0px; text-transform: none; background-color: transparent; text-indent: 0px; padding-left: 14px; padding-right: 14px; font: bold 18px Arial; white-space: normal; background-position: 0% 100%; letter-spacing: normal; height: 38px; color: rgb(124,169,237); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_title" align="left">Sample Input</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-content.png); text-align: left; padding-bottom: 0px; text-transform: none; text-indent: 0px; margin: 0px; padding-left: 20px; padding-right: 20px; font: 14px 'Times New Roman'; white-space: normal; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_content"><pre style="margin: 0px; font-size: 14px"><div style="font-family: 'Courier New', Courier, monospace">7 2 1 4 5 1 3 3
4 1000 1000 1000 1000
0</div></pre></div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-bottom.png); text-transform: none; text-indent: 0px; margin: 0px; font: medium 'Times New Roman'; white-space: normal; background-position: 0% 0%; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_bottom">&nbsp;</div><br style="text-transform: none; text-indent: 0px; font: medium 'Times New Roman'; white-space: normal; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" />
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-title.png); padding-bottom: 0px; text-transform: none; background-color: transparent; text-indent: 0px; padding-left: 14px; padding-right: 14px; font: bold 18px Arial; white-space: normal; background-position: 0% 100%; letter-spacing: normal; height: 38px; color: rgb(124,169,237); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_title" align="left">Sample Output</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-content.png); text-align: left; padding-bottom: 0px; text-transform: none; text-indent: 0px; margin: 0px; padding-left: 20px; padding-right: 20px; font: 14px 'Times New Roman'; white-space: normal; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_content"><pre style="margin: 0px; font-size: 14px"><div style="font-family: 'Courier New', Courier, monospace">8
4000</div></pre></div><br class="Apple-interchange-newline" />
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img id="Code_Closed_Image_231809" onclick="this.style.display='none'; Code_Closed_Text_231809.style.display='none'; Code_Open_Image_231809.style.display='inline'; Code_Open_Text_231809.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" width="11" height="16"><img style="display: none" id="Code_Open_Image_231809" onclick="this.style.display='none'; Code_Open_Text_231809.style.display='none'; Code_Closed_Image_231809.style.display='inline'; Code_Closed_Text_231809.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" width="11" height="16"><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Code_Closed_Text_231809"></span><span style="display: none" id="Code_Open_Text_231809"><br /><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080">&nbsp;1</span><img id="Codehighlighter1_0_92_Open_Image" onclick="this.style.display='none'; Codehighlighter1_0_92_Open_Text.style.display='none'; Codehighlighter1_0_92_Closed_Image.style.display='inline'; Codehighlighter1_0_92_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_0_92_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_0_92_Closed_Text.style.display='none'; Codehighlighter1_0_92_Open_Image.style.display='inline'; Codehighlighter1_0_92_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif"><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_0_92_Closed_Text">/**/</span><span id="Codehighlighter1_0_92_Open_Text"><span style="color: #008000">/*</span><span style="color: #008000">用dp方法解决，首先是对于每个h[i],都有s[i]=h[i]*(r-j+1),r为从i右边第一个起，若好h[r]&gt;=h[i],则r++;左边同理<br /></span><span style="color: #008080">&nbsp;2</span><span style="color: #008000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" />最后求出max（s[i]）即可</span><span style="color: #008000">*/</span></span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;3</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">cstdio</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;4</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">iostream</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;5</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">using</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">namespace</span><span style="color: #000000">&nbsp;std;<br /></span><span style="color: #008080">&nbsp;6</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">#define</span><span style="color: #000000">&nbsp;INF&nbsp;100010</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;7</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;l[INF],r[INF],n,i;<br /></span><span style="color: #008080">&nbsp;8</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;main()<br /></span><span style="color: #008080">&nbsp;9</span><span style="color: #000000"><img id="Codehighlighter1_204_719_Open_Image" onclick="this.style.display='none'; Codehighlighter1_204_719_Open_Text.style.display='none'; Codehighlighter1_204_719_Closed_Image.style.display='inline'; Codehighlighter1_204_719_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_204_719_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_204_719_Closed_Text.style.display='none'; Codehighlighter1_204_719_Open_Image.style.display='inline'; Codehighlighter1_204_719_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_204_719_Closed_Text"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_204_719_Open_Text"><span style="color: #000000">{<br /></span><span style="color: #008080">10</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;_int64&nbsp;h[INF],s,max;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;结果可能超出int，h初始为__int64&nbsp;或运算前强转化为__int64。运算过程中int会溢出</span><span style="color: #008000"><br /></span><span style="color: #008080">11</span><span style="color: #008000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">while</span><span style="color: #000000">(cin</span><span style="color: #000000">&gt;&gt;</span><span style="color: #000000">n</span><span style="color: #000000">&amp;&amp;</span><span style="color: #000000">n)<br /></span><span style="color: #008080">12</span><span style="color: #000000"><img id="Codehighlighter1_300_706_Open_Image" onclick="this.style.display='none'; Codehighlighter1_300_706_Open_Text.style.display='none'; Codehighlighter1_300_706_Closed_Image.style.display='inline'; Codehighlighter1_300_706_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_300_706_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_300_706_Closed_Text.style.display='none'; Codehighlighter1_300_706_Open_Image.style.display='inline'; Codehighlighter1_300_706_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_300_706_Closed_Text"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_300_706_Open_Text"><span style="color: #000000">{<br /></span><span style="color: #008080">13</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;<br /></span><span style="color: #008080">14</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(i</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">;i</span><span style="color: #000000">&lt;=</span><span style="color: #000000">n;i</span><span style="color: #000000">++</span><span style="color: #000000">)<br /></span><span style="color: #008080">15</span><span style="color: #000000"><img id="Codehighlighter1_331_377_Open_Image" onclick="this.style.display='none'; Codehighlighter1_331_377_Open_Text.style.display='none'; Codehighlighter1_331_377_Closed_Image.style.display='inline'; Codehighlighter1_331_377_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_331_377_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_331_377_Closed_Text.style.display='none'; Codehighlighter1_331_377_Open_Image.style.display='inline'; Codehighlighter1_331_377_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_331_377_Closed_Text"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_331_377_Open_Text"><span style="color: #000000">{<br /></span><span style="color: #008080">16</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scanf(</span><span style="color: #000000">"</span><span style="color: #000000">%I64d</span><span style="color: #000000">"</span><span style="color: #000000">,</span><span style="color: #000000">&amp;</span><span style="color: #000000">h[i]);<br /></span><span style="color: #008080">17</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;l[i]</span><span style="color: #000000">=</span><span style="color: #000000">r[i]</span><span style="color: #000000">=</span><span style="color: #000000">i;<br /></span><span style="color: #008080">18</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" /><br /></span><span style="color: #008080">19</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /></span><span style="color: #008080">20</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;h[</span><span style="color: #000000">0</span><span style="color: #000000">]</span><span style="color: #000000">=</span><span style="color: #000000">h[n</span><span style="color: #000000">+</span><span style="color: #000000">1</span><span style="color: #000000">]</span><span style="color: #000000">=-</span><span style="color: #000000">1</span><span style="color: #000000">;</span><span style="color: #008000">//</span><span style="color: #008000">题目中h[i]可能为0，初始化height数组为-1，防止死循环。</span><span style="color: #008000"><br /></span><span style="color: #008080">21</span><span style="color: #008000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(i</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">;i</span><span style="color: #000000">&lt;=</span><span style="color: #000000">n;i</span><span style="color: #000000">++</span><span style="color: #000000">)<br /></span><span style="color: #008080">22</span><span style="color: #000000"><img id="Codehighlighter1_454_509_Open_Image" onclick="this.style.display='none'; Codehighlighter1_454_509_Open_Text.style.display='none'; Codehighlighter1_454_509_Closed_Image.style.display='inline'; Codehighlighter1_454_509_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_454_509_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_454_509_Closed_Text.style.display='none'; Codehighlighter1_454_509_Open_Image.style.display='inline'; Codehighlighter1_454_509_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_454_509_Closed_Text"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_454_509_Open_Text"><span style="color: #000000">{<br /></span><span style="color: #008080">23</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">while</span><span style="color: #000000">(h[l[i]</span><span style="color: #000000">-</span><span style="color: #000000">1</span><span style="color: #000000">]</span><span style="color: #000000">&gt;=</span><span style="color: #000000">h[i])</span><span style="color: #008000">//</span><span style="color: #008000">左移</span><span style="color: #008000"><br /></span><span style="color: #008080">24</span><span style="color: #008000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;l[i]</span><span style="color: #000000">=</span><span style="color: #000000">l[l[i]</span><span style="color: #000000">-</span><span style="color: #000000">1</span><span style="color: #000000">];<br /></span><span style="color: #008080">25</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" /><br /></span><span style="color: #008080">26</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /></span><span style="color: #008080">27</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(i</span><span style="color: #000000">=</span><span style="color: #000000">n;i</span><span style="color: #000000">&gt;=</span><span style="color: #000000">1</span><span style="color: #000000">;i</span><span style="color: #000000">--</span><span style="color: #000000">)<br /></span><span style="color: #008080">28</span><span style="color: #000000"><img id="Codehighlighter1_533_591_Open_Image" onclick="this.style.display='none'; Codehighlighter1_533_591_Open_Text.style.display='none'; Codehighlighter1_533_591_Closed_Image.style.display='inline'; Codehighlighter1_533_591_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_533_591_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_533_591_Closed_Text.style.display='none'; Codehighlighter1_533_591_Open_Image.style.display='inline'; Codehighlighter1_533_591_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_533_591_Closed_Text"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_533_591_Open_Text"><span style="color: #000000">{&nbsp;&nbsp;&nbsp;&nbsp;<br /></span><span style="color: #008080">29</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">while</span><span style="color: #000000">(h[r[i]</span><span style="color: #000000">+</span><span style="color: #000000">1</span><span style="color: #000000">]</span><span style="color: #000000">&gt;=</span><span style="color: #000000">h[i])&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">右移&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000"><br /></span><span style="color: #008080">30</span><span style="color: #008000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" /></span><span style="color: #000000"><br /></span><span style="color: #008080">31</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r[i]</span><span style="color: #000000">=</span><span style="color: #000000">r[r[i]</span><span style="color: #000000">+</span><span style="color: #000000">1</span><span style="color: #000000">];<br /></span><span style="color: #008080">32</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /></span><span style="color: #008080">33</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;max</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;<br /></span><span style="color: #008080">34</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(i</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">;i</span><span style="color: #000000">&lt;=</span><span style="color: #000000">n;i</span><span style="color: #000000">++</span><span style="color: #000000">)<br /></span><span style="color: #008080">35</span><span style="color: #000000"><img id="Codehighlighter1_625_676_Open_Image" onclick="this.style.display='none'; Codehighlighter1_625_676_Open_Text.style.display='none'; Codehighlighter1_625_676_Closed_Image.style.display='inline'; Codehighlighter1_625_676_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_625_676_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_625_676_Closed_Text.style.display='none'; Codehighlighter1_625_676_Open_Image.style.display='inline'; Codehighlighter1_625_676_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_625_676_Closed_Text"><img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span id="Codehighlighter1_625_676_Open_Text"><span style="color: #000000">{<br /></span><span style="color: #008080">36</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s</span><span style="color: #000000">=</span><span style="color: #000000">h[i]</span><span style="color: #000000">*</span><span style="color: #000000">(r[i]</span><span style="color: #000000">-</span><span style="color: #000000">l[i]</span><span style="color: #000000">+</span><span style="color: #000000">1</span><span style="color: #000000">);<br /></span><span style="color: #008080">37</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;max</span><span style="color: #000000">=</span><span style="color: #000000">s</span><span style="color: #000000">&gt;</span><span style="color: #000000">max</span><span style="color: #000000">?</span><span style="color: #000000">&nbsp;s:max;<br /></span><span style="color: #008080">38</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" /><br /></span><span style="color: #008080">39</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /></span><span style="color: #008080">40</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(</span><span style="color: #000000">"</span><span style="color: #000000">%I64d\n</span><span style="color: #000000">"</span><span style="color: #000000">,max);<br /></span><span style="color: #008080">41</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" /><br /></span><span style="color: #008080">42</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /></span><span style="color: #008080">43</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">;<br /></span><span style="color: #008080">44</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" />}</span></span></span></div><br />PS：有无有更加快速的方法呢，时间上还是比较慢<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><img src ="http://www.blogjava.net/Person/aggbug/398630.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Person/" target="_blank">天YU地___培生，代码人生 </a> 2013-05-01 23:19 <a href="http://www.blogjava.net/Person/archive/2013/05/01/398630.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>dp问题之数字三角形问题（老师讲课例题）</title><link>http://www.blogjava.net/Person/archive/2013/04/10/397657.html</link><dc:creator>天YU地___培生，代码人生 </dc:creator><author>天YU地___培生，代码人生 </author><pubDate>Wed, 10 Apr 2013 11:28:00 GMT</pubDate><guid>http://www.blogjava.net/Person/archive/2013/04/10/397657.html</guid><wfw:comment>http://www.blogjava.net/Person/comments/397657.html</wfw:comment><comments>http://www.blogjava.net/Person/archive/2013/04/10/397657.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/Person/comments/commentRss/397657.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Person/services/trackbacks/397657.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 数字三角形问题： &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3 8&nbsp;&nbsp;&nbsp...&nbsp;&nbsp;<a href='http://www.blogjava.net/Person/archive/2013/04/10/397657.html'>阅读全文</a><img src ="http://www.blogjava.net/Person/aggbug/397657.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Person/" target="_blank">天YU地___培生，代码人生 </a> 2013-04-10 19:28 <a href="http://www.blogjava.net/Person/archive/2013/04/10/397657.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>1422重温世界杯</title><link>http://www.blogjava.net/Person/archive/2013/03/18/396571.html</link><dc:creator>天YU地___培生，代码人生 </dc:creator><author>天YU地___培生，代码人生 </author><pubDate>Mon, 18 Mar 2013 01:45:00 GMT</pubDate><guid>http://www.blogjava.net/Person/archive/2013/03/18/396571.html</guid><wfw:comment>http://www.blogjava.net/Person/comments/396571.html</wfw:comment><comments>http://www.blogjava.net/Person/archive/2013/03/18/396571.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/Person/comments/commentRss/396571.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Person/services/trackbacks/396571.html</trackback:ping><description><![CDATA[<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-title.png); padding-bottom: 0px; text-transform: none; background-color: transparent; text-indent: 0px; padding-left: 14px; padding-right: 14px; font: bold 18px Arial; white-space: normal; background-position: 0% 100%; letter-spacing: normal; height: 38px; color: rgb(124,169,237); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_title" align="left">Problem Description</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-content.png); text-align: left; padding-bottom: 0px; text-transform: none; text-indent: 0px; margin: 0px; padding-left: 20px; padding-right: 20px; font: 14px 'Times New Roman'; white-space: normal; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_content">世界杯结束了,意大利人连本带利的收回了法国人6年前欠他们的债,捧起了大力神杯,成就了4星意大利.<br />世界杯虽然结束了,但是这界世界杯给我们还是留下许多值得回忆的东西.比如我们听到了黄名嘴的3分钟激情解说,我们懂得了原来可以向同一个人出示3张黄牌，我们还看到了齐达内的头不仅能顶球还能顶人&#8230;&#8230;&#8230;&#8230;<br />介于有这么多的精彩,xhd决定重温德国世界杯,当然只是去各个承办世界杯比赛的城市走走看看.但是这需要一大比钱,幸运的是xhd对世界杯的热爱之情打动了德国世界杯组委会,他们将提供xhd在中国杭州和德国任意世界杯承办城市的往返机票,并说服了这些城市在xhd到达这座城市时为他提供一笔生活费以便他在那里参观时用,当参观完时剩余的钱也将留给xhd,但当生活费不够时他们将强行结束xhd的这次德国之行,除了这个,他们还有一个条件,xhd只能根据他们所给的路线参观.比如有3座城市a,b,c,他们给定了a-b-c-a的路线,那么xhd只有3种参观顺序abc,bca,cab.由于各个城市所提供的生活费和在那里的花费都不同,这使xhd很头痛,还好我们事先知道了这笔生活费和花费.请问xhd最多能顺利参观几座城市?</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-bottom.png); text-transform: none; text-indent: 0px; margin: 0px; font: medium 'Times New Roman'; white-space: normal; background-position: 0% 0%; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_bottom">&nbsp;</div><br style="text-transform: none; text-indent: 0px; font: medium 'Times New Roman'; white-space: normal; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" />
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-title.png); padding-bottom: 0px; text-transform: none; background-color: transparent; text-indent: 0px; padding-left: 14px; padding-right: 14px; font: bold 18px Arial; white-space: normal; background-position: 0% 100%; letter-spacing: normal; height: 38px; color: rgb(124,169,237); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_title" align="left">Input</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-content.png); text-align: left; padding-bottom: 0px; text-transform: none; text-indent: 0px; margin: 0px; padding-left: 20px; padding-right: 20px; font: 14px 'Times New Roman'; white-space: normal; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_content">每组输入数据分两行,第一行是一个正整数n(1&lt;=n&lt;=100000),表示有n座城市.接下来的一行按照给定的路线顺序的输出这n个城市的生活费和花费,w1,l1,w2,l2,&#8230;&#8230;,wn,ln,其中wi,li分别表示第i个城市的生活费和花费,并且它们都是正整数.</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-bottom.png); text-transform: none; text-indent: 0px; margin: 0px; font: medium 'Times New Roman'; white-space: normal; background-position: 0% 0%; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_bottom">&nbsp;</div><br style="text-transform: none; text-indent: 0px; font: medium 'Times New Roman'; white-space: normal; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" />
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-title.png); padding-bottom: 0px; text-transform: none; background-color: transparent; text-indent: 0px; padding-left: 14px; padding-right: 14px; font: bold 18px Arial; white-space: normal; background-position: 0% 100%; letter-spacing: normal; height: 38px; color: rgb(124,169,237); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_title" align="left">Output</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-content.png); text-align: left; padding-bottom: 0px; text-transform: none; text-indent: 0px; margin: 0px; padding-left: 20px; padding-right: 20px; font: 14px 'Times New Roman'; white-space: normal; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_content">对应每组数据输出最多能参观的城市数.</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-bottom.png); text-transform: none; text-indent: 0px; margin: 0px; font: medium 'Times New Roman'; white-space: normal; background-position: 0% 0%; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_bottom">&nbsp;</div><br style="text-transform: none; text-indent: 0px; font: medium 'Times New Roman'; white-space: normal; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" />
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-title.png); padding-bottom: 0px; text-transform: none; background-color: transparent; text-indent: 0px; padding-left: 14px; padding-right: 14px; font: bold 18px Arial; white-space: normal; background-position: 0% 100%; letter-spacing: normal; height: 38px; color: rgb(124,169,237); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_title" align="left">Sample Input</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-content.png); text-align: left; padding-bottom: 0px; text-transform: none; text-indent: 0px; margin: 0px; padding-left: 20px; padding-right: 20px; font: 14px 'Times New Roman'; white-space: normal; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_content"><pre style="margin: 0px; font-size: 14px"><div style="font-family: 'Courier New', Courier, monospace">3
3 2 3 4 2 2
3
3 2 3 4 2 3</div></pre></div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-bottom.png); text-transform: none; text-indent: 0px; margin: 0px; font: medium 'Times New Roman'; white-space: normal; background-position: 0% 0%; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_bottom">&nbsp;</div><br style="text-transform: none; text-indent: 0px; font: medium 'Times New Roman'; white-space: normal; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" />
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-title.png); padding-bottom: 0px; text-transform: none; background-color: transparent; text-indent: 0px; padding-left: 14px; padding-right: 14px; font: bold 18px Arial; white-space: normal; background-position: 0% 100%; letter-spacing: normal; height: 38px; color: rgb(124,169,237); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_title" align="left">Sample Output</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-content.png); text-align: left; padding-bottom: 0px; text-transform: none; text-indent: 0px; margin: 0px; padding-left: 20px; padding-right: 20px; font: 14px 'Times New Roman'; white-space: normal; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_content"><pre style="margin: 0px; font-size: 14px"><div style="font-family: 'Courier New', Courier, monospace">3
2</div></pre></div><br class="Apple-interchange-newline" />
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img id="Codehighlighter1_0_34_Open_Image" onclick="this.style.display='none'; Codehighlighter1_0_34_Open_Text.style.display='none'; Codehighlighter1_0_34_Closed_Image.style.display='inline'; Codehighlighter1_0_34_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_0_34_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_0_34_Closed_Text.style.display='none'; Codehighlighter1_0_34_Open_Image.style.display='inline'; Codehighlighter1_0_34_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif"><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_0_34_Closed_Text">/**/</span><span id="Codehighlighter1_0_34_Open_Text"><span style="color: #008000">/*</span><span style="color: #008000">状态方程：F[I]=MAX(F[I-1]+A[I],A[I])</span><span style="color: #008000">*/</span></span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">stdio.h</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />#include</span><span style="color: #000000">&lt;</span><span style="color: #0000ff">string</span><span style="color: #000000">.h</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">stdlib.h</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">#define</span><span style="color: #000000">&nbsp;MAX&nbsp;100000</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;dp[MAX];<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;sum[MAX];<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;a[</span><span style="color: #000000">2</span><span style="color: #000000">*</span><span style="color: #000000">MAX];<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;max(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;a,</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;b)<br /><img id="Codehighlighter1_173_193_Open_Image" onclick="this.style.display='none'; Codehighlighter1_173_193_Open_Text.style.display='none'; Codehighlighter1_173_193_Closed_Image.style.display='inline'; Codehighlighter1_173_193_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_173_193_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_173_193_Closed_Text.style.display='none'; Codehighlighter1_173_193_Open_Image.style.display='inline'; Codehighlighter1_173_193_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_173_193_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_173_193_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;a</span><span style="color: #000000">&gt;</span><span style="color: #000000">b</span><span style="color: #000000">?</span><span style="color: #000000">&nbsp;a:b;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;main()<br /><img id="Codehighlighter1_206_957_Open_Image" onclick="this.style.display='none'; Codehighlighter1_206_957_Open_Text.style.display='none'; Codehighlighter1_206_957_Closed_Image.style.display='inline'; Codehighlighter1_206_957_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_206_957_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_206_957_Closed_Text.style.display='none'; Codehighlighter1_206_957_Open_Image.style.display='inline'; Codehighlighter1_206_957_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_206_957_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_206_957_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;i,a1,a2,n;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">while</span><span style="color: #000000">(scanf(</span><span style="color: #000000">"</span><span style="color: #000000">%d</span><span style="color: #000000">"</span><span style="color: #000000">,</span><span style="color: #000000">&amp;</span><span style="color: #000000">n)</span><span style="color: #000000">!=</span><span style="color: #000000">EOF)<br /><img id="Codehighlighter1_253_955_Open_Image" onclick="this.style.display='none'; Codehighlighter1_253_955_Open_Text.style.display='none'; Codehighlighter1_253_955_Closed_Image.style.display='inline'; Codehighlighter1_253_955_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_253_955_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_253_955_Closed_Text.style.display='none'; Codehighlighter1_253_955_Open_Image.style.display='inline'; Codehighlighter1_253_955_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_253_955_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_253_955_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;memset(dp,</span><span style="color: #000000">0</span><span style="color: #000000">,</span><span style="color: #0000ff">sizeof</span><span style="color: #000000">(dp));<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;num;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(i</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;i</span><span style="color: #000000">&lt;</span><span style="color: #000000">n;i</span><span style="color: #000000">++</span><span style="color: #000000">)<br /><img id="Codehighlighter1_314_366_Open_Image" onclick="this.style.display='none'; Codehighlighter1_314_366_Open_Text.style.display='none'; Codehighlighter1_314_366_Closed_Image.style.display='inline'; Codehighlighter1_314_366_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_314_366_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_314_366_Closed_Text.style.display='none'; Codehighlighter1_314_366_Open_Image.style.display='inline'; Codehighlighter1_314_366_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_314_366_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_314_366_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scanf(</span><span style="color: #000000">"</span><span style="color: #000000">%d%d</span><span style="color: #000000">"</span><span style="color: #000000">,</span><span style="color: #000000">&amp;</span><span style="color: #000000">a1,</span><span style="color: #000000">&amp;</span><span style="color: #000000">a2);<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a[i]</span><span style="color: #000000">=</span><span style="color: #000000">a[i</span><span style="color: #000000">+</span><span style="color: #000000">n]</span><span style="color: #000000">=</span><span style="color: #000000">a1</span><span style="color: #000000">-</span><span style="color: #000000">a2;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(a[</span><span style="color: #000000">0</span><span style="color: #000000">]</span><span style="color: #000000">&gt;=</span><span style="color: #000000">0</span><span style="color: #000000">)<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dp[</span><span style="color: #000000">0</span><span style="color: #000000">]</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sum[</span><span style="color: #000000">0</span><span style="color: #000000">]</span><span style="color: #000000">=</span><span style="color: #000000">a[</span><span style="color: #000000">0</span><span style="color: #000000">];<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;num</span><span style="color: #000000">=</span><span style="color: #000000">dp[</span><span style="color: #000000">0</span><span style="color: #000000">];<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(i</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">;i</span><span style="color: #000000">&lt;</span><span style="color: #000000">2</span><span style="color: #000000">*</span><span style="color: #000000">n;i</span><span style="color: #000000">++</span><span style="color: #000000">)<br /><img id="Codehighlighter1_445_929_Open_Image" onclick="this.style.display='none'; Codehighlighter1_445_929_Open_Text.style.display='none'; Codehighlighter1_445_929_Closed_Image.style.display='inline'; Codehighlighter1_445_929_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_445_929_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_445_929_Closed_Text.style.display='none'; Codehighlighter1_445_929_Open_Image.style.display='inline'; Codehighlighter1_445_929_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_445_929_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_445_929_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(num</span><span style="color: #000000">==</span><span style="color: #000000">n)<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">break</span><span style="color: #000000">;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(a[i]</span><span style="color: #000000">&gt;=</span><span style="color: #000000">0</span><span style="color: #000000">)<br /><img id="Codehighlighter1_490_701_Open_Image" onclick="this.style.display='none'; Codehighlighter1_490_701_Open_Text.style.display='none'; Codehighlighter1_490_701_Closed_Image.style.display='inline'; Codehighlighter1_490_701_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_490_701_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_490_701_Closed_Text.style.display='none'; Codehighlighter1_490_701_Open_Image.style.display='inline'; Codehighlighter1_490_701_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_490_701_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_490_701_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(sum[i</span><span style="color: #000000">-</span><span style="color: #000000">1</span><span style="color: #000000">]</span><span style="color: #000000">&gt;=</span><span style="color: #000000">0</span><span style="color: #000000">)<br /><img id="Codehighlighter1_516_643_Open_Image" onclick="this.style.display='none'; Codehighlighter1_516_643_Open_Text.style.display='none'; Codehighlighter1_516_643_Closed_Image.style.display='inline'; Codehighlighter1_516_643_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_516_643_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_516_643_Closed_Text.style.display='none'; Codehighlighter1_516_643_Open_Image.style.display='inline'; Codehighlighter1_516_643_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_516_643_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_516_643_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dp[i]</span><span style="color: #000000">=</span><span style="color: #000000">dp[i</span><span style="color: #000000">-</span><span style="color: #000000">1</span><span style="color: #000000">]</span><span style="color: #000000">+</span><span style="color: #000000">1</span><span style="color: #000000">;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">if(num&lt;=dp[i])<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;&nbsp;&nbsp;&nbsp;num=dp[i];</span><span style="color: #008000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;num</span><span style="color: #000000">=</span><span style="color: #000000">max(dp[i],num);<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sum[i]</span><span style="color: #000000">=</span><span style="color: #000000">sum[i</span><span style="color: #000000">-</span><span style="color: #000000">1</span><span style="color: #000000">]</span><span style="color: #000000">+</span><span style="color: #000000">a[i];<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000"><br /><img id="Codehighlighter1_658_696_Open_Image" onclick="this.style.display='none'; Codehighlighter1_658_696_Open_Text.style.display='none'; Codehighlighter1_658_696_Closed_Image.style.display='inline'; Codehighlighter1_658_696_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_658_696_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_658_696_Closed_Text.style.display='none'; Codehighlighter1_658_696_Open_Image.style.display='inline'; Codehighlighter1_658_696_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_658_696_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_658_696_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sum[i]</span><span style="color: #000000">=</span><span style="color: #000000">a[i];<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dp[i]</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000"><br /><img id="Codehighlighter1_714_925_Open_Image" onclick="this.style.display='none'; Codehighlighter1_714_925_Open_Text.style.display='none'; Codehighlighter1_714_925_Closed_Image.style.display='inline'; Codehighlighter1_714_925_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_714_925_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_714_925_Closed_Text.style.display='none'; Codehighlighter1_714_925_Open_Image.style.display='inline'; Codehighlighter1_714_925_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_714_925_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_714_925_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(sum[i</span><span style="color: #000000">-</span><span style="color: #000000">1</span><span style="color: #000000">]</span><span style="color: #000000">+</span><span style="color: #000000">a[i]</span><span style="color: #000000">&gt;=</span><span style="color: #000000">0</span><span style="color: #000000">)<br /><img id="Codehighlighter1_745_866_Open_Image" onclick="this.style.display='none'; Codehighlighter1_745_866_Open_Text.style.display='none'; Codehighlighter1_745_866_Closed_Image.style.display='inline'; Codehighlighter1_745_866_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_745_866_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_745_866_Closed_Text.style.display='none'; Codehighlighter1_745_866_Open_Image.style.display='inline'; Codehighlighter1_745_866_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_745_866_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_745_866_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dp[i]</span><span style="color: #000000">=</span><span style="color: #000000">dp[i</span><span style="color: #000000">-</span><span style="color: #000000">1</span><span style="color: #000000">]</span><span style="color: #000000">+</span><span style="color: #000000">1</span><span style="color: #000000">;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">if(num&lt;=dp[i])<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;&nbsp;&nbsp;&nbsp;num=dp[i];</span><span style="color: #008000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;num</span><span style="color: #000000">=</span><span style="color: #000000">max(dp[i],num);<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sum[i]</span><span style="color: #000000">=</span><span style="color: #000000">sum[i</span><span style="color: #000000">-</span><span style="color: #000000">1</span><span style="color: #000000">]</span><span style="color: #000000">+</span><span style="color: #000000">a[i];<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000">&nbsp;<br /><img id="Codehighlighter1_882_920_Open_Image" onclick="this.style.display='none'; Codehighlighter1_882_920_Open_Text.style.display='none'; Codehighlighter1_882_920_Closed_Image.style.display='inline'; Codehighlighter1_882_920_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_882_920_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_882_920_Closed_Text.style.display='none'; Codehighlighter1_882_920_Open_Image.style.display='inline'; Codehighlighter1_882_920_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_882_920_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_882_920_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dp[i]</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sum[i]</span><span style="color: #000000">=</span><span style="color: #000000">a[i];<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(</span><span style="color: #000000">"</span><span style="color: #000000">%d\n</span><span style="color: #000000">"</span><span style="color: #000000">,num);<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span></div><br />本题目可以用DP做也可以不用，dp的话是为最长公共子序列，记得是循环就行。 <img src ="http://www.blogjava.net/Person/aggbug/396571.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Person/" target="_blank">天YU地___培生，代码人生 </a> 2013-03-18 09:45 <a href="http://www.blogjava.net/Person/archive/2013/03/18/396571.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>HDU 2955 题 Robberies</title><link>http://www.blogjava.net/Person/archive/2013/02/16/395333.html</link><dc:creator>天YU地___培生，代码人生 </dc:creator><author>天YU地___培生，代码人生 </author><pubDate>Sat, 16 Feb 2013 14:15:00 GMT</pubDate><guid>http://www.blogjava.net/Person/archive/2013/02/16/395333.html</guid><wfw:comment>http://www.blogjava.net/Person/comments/395333.html</wfw:comment><comments>http://www.blogjava.net/Person/archive/2013/02/16/395333.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/Person/comments/commentRss/395333.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Person/services/trackbacks/395333.html</trackback:ping><description><![CDATA[<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-title.png); padding-bottom: 0px; widows: 2; text-transform: none; background-color: transparent; text-indent: 0px; padding-left: 14px; padding-right: 14px; font: bold 18px Arial; white-space: normal; background-position: 0% 100%; orphans: 2; letter-spacing: normal; height: 38px; color: rgb(124,169,237); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_title" align="left">Problem Description</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-content.png); text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; text-indent: 0px; margin: 0px; padding-left: 20px; padding-right: 20px; font: 14px 'Times New Roman'; white-space: normal; orphans: 2; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_content">The aspiring Roy the Robber has seen a lot of American movies, and knows that the bad guys usually gets caught in the end, often because they become too greedy. He has decided to work in the lucrative business of bank robbery only for a short while, before retiring to a comfortable job at a university.<br /><br />
<center><img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" src="http://acm.hdu.edu.cn/data/images/con211-1010-1.jpg"  alt="" /></center><br />For a few months now, Roy has been assessing the security of various banks and the amount of cash they hold. He wants to make a calculated risk, and grab as much money as possible.<br /><br /><br />His mother, Ola, has decided upon a tolerable probability of getting caught. She feels that he is safe enough if the banks he robs together give a probability less than this.</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-bottom.png); widows: 2; text-transform: none; text-indent: 0px; margin: 0px; font: medium 'Times New Roman'; white-space: normal; background-position: 0% 0%; orphans: 2; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_bottom">&nbsp;</div><br style="widows: 2; text-transform: none; text-indent: 0px; font: medium 'Times New Roman'; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" />
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-title.png); padding-bottom: 0px; widows: 2; text-transform: none; background-color: transparent; text-indent: 0px; padding-left: 14px; padding-right: 14px; font: bold 18px Arial; white-space: normal; background-position: 0% 100%; orphans: 2; letter-spacing: normal; height: 38px; color: rgb(124,169,237); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_title" align="left">Input</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-content.png); text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; text-indent: 0px; margin: 0px; padding-left: 20px; padding-right: 20px; font: 14px 'Times New Roman'; white-space: normal; orphans: 2; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_content">The first line of input gives T, the number of cases. For each scenario, the first line of input gives a floating point number P, the probability Roy needs to be below, and an integer N, the number of banks he has plans for. Then follow N lines, where line j gives an integer Mj and a floating point number Pj .<span class="Apple-converted-space">&nbsp;</span><br />Bank j contains Mj millions, and the probability of getting caught from robbing it is Pj .</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-bottom.png); widows: 2; text-transform: none; text-indent: 0px; margin: 0px; font: medium 'Times New Roman'; white-space: normal; background-position: 0% 0%; orphans: 2; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_bottom">&nbsp;</div><br style="widows: 2; text-transform: none; text-indent: 0px; font: medium 'Times New Roman'; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" />
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-title.png); padding-bottom: 0px; widows: 2; text-transform: none; background-color: transparent; text-indent: 0px; padding-left: 14px; padding-right: 14px; font: bold 18px Arial; white-space: normal; background-position: 0% 100%; orphans: 2; letter-spacing: normal; height: 38px; color: rgb(124,169,237); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_title" align="left">Output</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-content.png); text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; text-indent: 0px; margin: 0px; padding-left: 20px; padding-right: 20px; font: 14px 'Times New Roman'; white-space: normal; orphans: 2; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_content">For each test case, output a line with the maximum number of millions he can expect to get while the probability of getting caught is less than the limit set.<br /><br />Notes and Constraints<br />0 &lt; T &lt;= 100<br />0.0 &lt;= P &lt;= 1.0<br />0 &lt; N &lt;= 100<br />0 &lt; Mj &lt;= 100<br />0.0 &lt;= Pj &lt;= 1.0<br />A bank goes bankrupt if it is robbed, and you may assume that all probabilities are independent as the police have very low funds.</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-bottom.png); widows: 2; text-transform: none; text-indent: 0px; margin: 0px; font: medium 'Times New Roman'; white-space: normal; background-position: 0% 0%; orphans: 2; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_bottom">&nbsp;</div><br style="widows: 2; text-transform: none; text-indent: 0px; font: medium 'Times New Roman'; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" />
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-title.png); padding-bottom: 0px; widows: 2; text-transform: none; background-color: transparent; text-indent: 0px; padding-left: 14px; padding-right: 14px; font: bold 18px Arial; white-space: normal; background-position: 0% 100%; orphans: 2; letter-spacing: normal; height: 38px; color: rgb(124,169,237); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_title" align="left">Sample Input</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-content.png); text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; text-indent: 0px; margin: 0px; padding-left: 20px; padding-right: 20px; font: 14px 'Times New Roman'; white-space: normal; orphans: 2; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_content"><pre style="margin: 0px; font-size: 14px"><div style="font-family: 'Courier New', Courier, monospace">3
0.04 3
1 0.02
2 0.03
3 0.05
0.06 3
2 0.03
2 0.03
3 0.05
0.10 3
1 0.03
2 0.02
3 0.05</div></pre></div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-bottom.png); widows: 2; text-transform: none; text-indent: 0px; margin: 0px; font: medium 'Times New Roman'; white-space: normal; background-position: 0% 0%; orphans: 2; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_bottom">&nbsp;</div><br style="widows: 2; text-transform: none; text-indent: 0px; font: medium 'Times New Roman'; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" />
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-title.png); padding-bottom: 0px; widows: 2; text-transform: none; background-color: transparent; text-indent: 0px; padding-left: 14px; padding-right: 14px; font: bold 18px Arial; white-space: normal; background-position: 0% 100%; orphans: 2; letter-spacing: normal; height: 38px; color: rgb(124,169,237); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_title" align="left">Sample Output</div>
<div style="background-image: url(http://acm.hdu.edu.cn/images/panel-content.png); text-align: left; padding-bottom: 0px; widows: 2; text-transform: none; text-indent: 0px; margin: 0px; padding-left: 20px; padding-right: 20px; font: 14px 'Times New Roman'; white-space: normal; orphans: 2; letter-spacing: normal; height: auto; color: rgb(0,0,0); word-spacing: 0px; padding-top: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="panel_content"><pre style="margin: 0px; font-size: 14px"><div style="font-family: 'Courier New', Courier, monospace">2
4
6<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img id="Code_Closed_Image_221435" onclick="this.style.display='none'; Code_Closed_Text_221435.style.display='none'; Code_Open_Image_221435.style.display='inline'; Code_Open_Text_221435.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" width="11" height="16"><img style="display: none" id="Code_Open_Image_221435" onclick="this.style.display='none'; Code_Open_Text_221435.style.display='none'; Code_Closed_Image_221435.style.display='inline'; Code_Closed_Text_221435.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" width="11" height="16"><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Code_Closed_Text_221435"></span><span style="display: none" id="Code_Open_Text_221435"><br /><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img id="Codehighlighter1_0_143_Open_Image" onclick="this.style.display='none'; Codehighlighter1_0_143_Open_Text.style.display='none'; Codehighlighter1_0_143_Closed_Image.style.display='inline'; Codehighlighter1_0_143_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_0_143_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_0_143_Closed_Text.style.display='none'; Codehighlighter1_0_143_Open_Image.style.display='inline'; Codehighlighter1_0_143_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif"><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_0_143_Closed_Text">/**/</span><span id="Codehighlighter1_0_143_Open_Text"><span style="color: #008000">/*</span><span style="color: #008000">该题是动态规划中的01背包问题，把最大被抓概率转为安全概率1-p，然后按照背包问题求解即可，注意题目没说是精确到小数点后两位<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;状态方程：d[i]=0&nbsp;or&nbsp;max(d[i],d[j-money[i]]*pro[i],要注意是乘法，我看错WA了好久~~~~(&gt;_&lt;)~~~~&nbsp;</span><span style="color: #008000">*/</span></span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">cstdio</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">iostream</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">cmath</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">#define</span><span style="color: #000000">&nbsp;MAXN&nbsp;101</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">#define</span><span style="color: #000000">&nbsp;MAXW&nbsp;10001</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">using</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">namespace</span><span style="color: #000000">&nbsp;std;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;max(</span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;a,</span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;b)<br /><img id="Codehighlighter1_284_306_Open_Image" onclick="this.style.display='none'; Codehighlighter1_284_306_Open_Text.style.display='none'; Codehighlighter1_284_306_Closed_Image.style.display='inline'; Codehighlighter1_284_306_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_284_306_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_284_306_Closed_Text.style.display='none'; Codehighlighter1_284_306_Open_Image.style.display='inline'; Codehighlighter1_284_306_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_284_306_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_284_306_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;a</span><span style="color: #000000">&gt;</span><span style="color: #000000">b</span><span style="color: #000000">?</span><span style="color: #000000">a:b;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;money[MAXN];<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;d[MAXW],pro[MAXW];<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;main()<br /><img id="Codehighlighter1_362_872_Open_Image" onclick="this.style.display='none'; Codehighlighter1_362_872_Open_Text.style.display='none'; Codehighlighter1_362_872_Closed_Image.style.display='inline'; Codehighlighter1_362_872_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_362_872_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_362_872_Closed_Text.style.display='none'; Codehighlighter1_362_872_Open_Image.style.display='inline'; Codehighlighter1_362_872_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_362_872_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_362_872_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;test,n,i,j,msum;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;p;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;cin</span><span style="color: #000000">&gt;&gt;</span><span style="color: #000000">test;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">while</span><span style="color: #000000">(test</span><span style="color: #000000">--</span><span style="color: #000000">)<br /><img id="Codehighlighter1_425_859_Open_Image" onclick="this.style.display='none'; Codehighlighter1_425_859_Open_Text.style.display='none'; Codehighlighter1_425_859_Closed_Image.style.display='inline'; Codehighlighter1_425_859_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_425_859_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_425_859_Closed_Text.style.display='none'; Codehighlighter1_425_859_Open_Image.style.display='inline'; Codehighlighter1_425_859_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_425_859_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_425_859_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scanf(</span><span style="color: #000000">"</span><span style="color: #000000">%lf&nbsp;%d</span><span style="color: #000000">"</span><span style="color: #000000">,</span><span style="color: #000000">&amp;</span><span style="color: #000000">p,</span><span style="color: #000000">&amp;</span><span style="color: #000000">n);<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">-</span><span style="color: #000000">p;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;msum</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(i</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;i</span><span style="color: #000000">&lt;</span><span style="color: #000000">n;i</span><span style="color: #000000">++</span><span style="color: #000000">)<br /><img id="Codehighlighter1_492_581_Open_Image" onclick="this.style.display='none'; Codehighlighter1_492_581_Open_Text.style.display='none'; Codehighlighter1_492_581_Closed_Image.style.display='inline'; Codehighlighter1_492_581_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_492_581_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_492_581_Closed_Text.style.display='none'; Codehighlighter1_492_581_Open_Image.style.display='inline'; Codehighlighter1_492_581_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_492_581_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_492_581_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scanf(</span><span style="color: #000000">"</span><span style="color: #000000">%d&nbsp;%lf</span><span style="color: #000000">"</span><span style="color: #000000">,</span><span style="color: #000000">&amp;</span><span style="color: #000000">money[i],</span><span style="color: #000000">&amp;</span><span style="color: #000000">pro[i]);<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;msum</span><span style="color: #000000">+=</span><span style="color: #000000">money[i];<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pro[i]</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">-</span><span style="color: #000000">pro[i];</span><span style="color: #008000">//</span><span style="color: #008000">记得转换数据</span><span style="color: #008000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(i</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;i</span><span style="color: #000000">&lt;=</span><span style="color: #000000">msum;i</span><span style="color: #000000">++</span><span style="color: #000000">)<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;d[i]</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;d[</span><span style="color: #000000">0</span><span style="color: #000000">]</span><span style="color: #000000">=</span><span style="color: #000000">1</span><span style="color: #000000">;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(i</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;i</span><span style="color: #000000">&lt;</span><span style="color: #000000">n;i</span><span style="color: #000000">++</span><span style="color: #000000">)<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(j</span><span style="color: #000000">=</span><span style="color: #000000">msum;j</span><span style="color: #000000">&gt;=</span><span style="color: #000000">money[i];j</span><span style="color: #000000">--</span><span style="color: #000000">)<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;d[j]</span><span style="color: #000000">=</span><span style="color: #000000">max(d[j],d[j</span><span style="color: #000000">-</span><span style="color: #000000">money[i]]</span><span style="color: #000000">*</span><span style="color: #000000">pro[i]);</span><span style="color: #008000">//</span><span style="color: #008000">状态方程；</span><span style="color: #008000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">bool</span><span style="color: #000000">&nbsp;flag</span><span style="color: #000000">=</span><span style="color: #0000ff">false</span><span style="color: #000000">;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(i</span><span style="color: #000000">=</span><span style="color: #000000">msum;i</span><span style="color: #000000">&gt;=</span><span style="color: #000000">0</span><span style="color: #000000">;i</span><span style="color: #000000">--</span><span style="color: #000000">)<br /><img id="Codehighlighter1_769_856_Open_Image" onclick="this.style.display='none'; Codehighlighter1_769_856_Open_Text.style.display='none'; Codehighlighter1_769_856_Closed_Image.style.display='inline'; Codehighlighter1_769_856_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_769_856_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_769_856_Closed_Text.style.display='none'; Codehighlighter1_769_856_Open_Image.style.display='inline'; Codehighlighter1_769_856_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_769_856_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_769_856_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(d[i]</span><span style="color: #000000">-</span><span style="color: #000000">p</span><span style="color: #000000">&gt;</span><span style="color: #000000">0.000000001</span><span style="color: #000000">)</span><span style="color: #008000">//</span><span style="color: #008000">自顶向下找出最大的i；</span><span style="color: #008000"><br /><img id="Codehighlighter1_813_852_Open_Image" onclick="this.style.display='none'; Codehighlighter1_813_852_Open_Text.style.display='none'; Codehighlighter1_813_852_Closed_Image.style.display='inline'; Codehighlighter1_813_852_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_813_852_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_813_852_Closed_Text.style.display='none'; Codehighlighter1_813_852_Open_Image.style.display='inline'; Codehighlighter1_813_852_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif"></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_813_852_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_813_852_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(</span><span style="color: #000000">"</span><span style="color: #000000">%d\n</span><span style="color: #000000">"</span><span style="color: #000000">,i);<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">break</span><span style="color: #000000">;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #008000">//</span><span style="color: #008000">动态规划基础题。2013、2、16</span></span></div><br /><br /><br /><br /></div></pre></div><img src ="http://www.blogjava.net/Person/aggbug/395333.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Person/" target="_blank">天YU地___培生，代码人生 </a> 2013-02-16 22:15 <a href="http://www.blogjava.net/Person/archive/2013/02/16/395333.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>