青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

為生存而奔跑

   :: 首頁 :: 聯系 :: 聚合  :: 管理
  271 Posts :: 0 Stories :: 58 Comments :: 0 Trackbacks

留言簿(5)

我參與的團隊

搜索

  •  

積分與排名

  • 積分 - 331733
  • 排名 - 74

最新評論

閱讀排行榜

評論排行榜

題目大意:給出一個有N個數字(-1000..1000,N<=10^5)的環狀序列,讓你求一個和最大的連續子序列。這個連續子序列的長度小于等于K。
分析:因為序列是環狀的,所以可以在序列后面復制一段(或者復制前k個數字)。如果用s[i]來表示復制過后的序列的前i個數的和,那么任意一個子序列[i..j]的和就等于s[j]-s[i-1]。對于每一個j,用s[j]減去最小的一個s[i](i>=j-k+1)就可以得到以j為終點長度不大于k的和最大的序列了。將原問題轉化為這樣一個問題后,就可以用單調隊列解決了。

單調隊列即保持隊列中的元素單調遞增(或遞減)的這樣一個隊列,可以從兩頭刪除,只能從隊尾插入。單調隊列的具體作用在于,由于保持隊列中的元素滿足單調性,對于上述問題中的每個j,可以用O(1)的時間找到對應的s[i]。(保持隊列中的元素單調增的話,隊首元素便是所要的元素了)。

維護方法:對于每個j,我們插入s[j-1](為什么不是s[j]? 隊列里面維護的是區間開始的下標,j是區間結束的下標),插入時從隊尾插入。為了保證隊列的單調性,我們從隊尾開始刪除元素,直到隊尾元素比當前需要插入的元素優(本題中是值比待插入元素小,位置比待插入元素靠前,不過后面這一個條件可以不考慮),就將當前元素插入到隊尾。之所以可以將之前的隊列尾部元素全部刪除,是因為它們已經不可能成為最優的元素了,因為當前要插入的元素位置比它們靠前,值比它們小。我們要找的,是滿足(i>=j-k+1)的i中最小的s[i],位置越大越可能成為后面的j的最優s[i]。

在插入元素后,從隊首開始,將不符合限制條件(i>=j-k+1)的元素全部刪除,此時隊列一定不為空。(因為剛剛插入了一個一定符合條件的元素)


#include<iostream>
#include
<queue>
using?namespace?std;
#define?INF?0x3fffffff
#define?maxn?100010
int?num[maxn],sum[maxn];
int?main()
{
????
int?T;
????
int?N,K,n;
????cin
>>T;
????
while(T--)
????{
????????cin
>>N>>K;
????????sum[
0]=0;
????????
for(int?i=1;i<=N;i++)
????????{
????????????cin
>>num[i];
????????????sum[i]
=sum[i-1]+num[i];
????????}
????????
for(int?i=N+1;i<N+K;i++)
????????{
????????????sum[i]
=sum[i-1]+num[i-N];
????????}
????????n
=N+K-1;
????????
????????deque
<int>?q;
????????q.clear();
????????
????????
int?ans=-INF;
????????
int?start,end;
????????
//[j-kj]?枚舉以j結尾的區間,找[j-k,j]中sum最小的i
????????for(int?j=1;j<=n;j++)
????????{
????????????
while(!q.empty()?&&?sum[j-1]<sum[q.back()])
????????????????q.pop_back();
????????????
while(!q.empty()?&&?q.front()<(j-K))
????????????????q.pop_front();
????????????q.push_back(j
-1);
????????????
if(sum[j]-sum[q.front()]>ans)
????????????{
????????????????ans
=sum[j]-sum[q.front()];
????????????????start
=q.front()+1;
????????????????end
=j;
????????????}
????????}
????????cout
<<ans<<"?"<<start<<"?"<<(end>N?end%N:end)<<endl;
????}
}


posted on 2010-08-04 15:44 baby-fly 閱讀(2473) 評論(8)  編輯 收藏 引用 所屬分類: Algorithm

Feedback

# re: HDU 3415 單調隊列 2010-08-27 19:54 justmeh
不錯,單調隊列只保存了index,減少了一半的空間。  回復  更多評論
  

# re: HDU 3415 單調隊列 2010-08-27 20:21 justmeh
另外,<queue>里面的queue定義中好像沒有pop_front和pop_back成員函數吧!  回復  更多評論
  

# re: HDU 3415 單調隊列 2010-09-12 12:29 baby_fly
@justmeh
用的是dequeue  回復  更多評論
  

# re: HDU 3415 單調隊列 2011-07-02 21:42 asdf
nb  回復  更多評論
  

# re: HDU 3415 單調隊列 2011-07-26 09:55 Chengsir
@baby_fly
學習了!  回復  更多評論
  

# re: HDU 3415 單調隊列 2011-08-29 13:33 @fly
贊一個  回復  更多評論
  

# re: HDU 3415 單調隊列 2013-07-15 13:26 KissLL
話說,sum數組為什么只開10W就能過,如果n=100000,k=100000,明顯要開20W啊  回復  更多評論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美日韩精品一区二区在线播放| 欧美成熟视频| 久久综合五月| 久久精品一本| 老鸭窝毛片一区二区三区| 久久久久久自在自线| 久久亚洲国产精品日日av夜夜| 久久久久久久999精品视频| 久久蜜桃av一区精品变态类天堂| 美乳少妇欧美精品| 最新国产成人av网站网址麻豆| 亚洲激情偷拍| 亚洲一区二区三区精品动漫| 亚洲欧美日韩综合aⅴ视频| 久久久久久九九九九| 裸体女人亚洲精品一区| 欧美日韩裸体免费视频| 国产一区99| 亚洲精品资源| 久久国产一区| 亚洲高清一区二| 亚洲一区二区三区精品在线| 久久精品国产欧美激情| 欧美日本国产在线| 国语自产精品视频在线看| 亚洲激情啪啪| 欧美一区二区三区免费视| 久久视频一区| 亚洲午夜一区二区三区| 快射av在线播放一区| 欧美日韩免费视频| 在线看日韩欧美| 先锋影音网一区二区| 欧美国产在线电影| 欧美在线免费观看亚洲| 久久久777| 99精品99| 久久久久久网站| 日韩一级精品| 免费在线国产精品| 激情综合在线| 久久大香伊蕉在人线观看热2| 亚洲人成毛片在线播放女女| 久久九九电影| 国产日韩欧美在线一区| 亚洲一区日韩在线| 亚洲人成啪啪网站| 欧美超级免费视 在线| 韩国视频理论视频久久| 久久国产直播| 亚洲无线一线二线三线区别av| 欧美日韩伦理在线| 亚洲天堂av在线免费| 亚洲精品免费一二三区| 欧美国产成人精品| 日韩视频―中文字幕| 亚洲国产mv| 欧美激情一区二区三区四区| 加勒比av一区二区| 欧美xart系列高清| 麻豆精品精品国产自在97香蕉| 在线成人激情黄色| 女同性一区二区三区人了人一| 欧美在线1区| 亚洲成人在线免费| 欧美电影在线免费观看网站| 久久伊人亚洲| 亚洲精品在线视频观看| 亚洲精品一区二区三区不| 欧美色123| 久久精品99| 久久久久久久一区二区三区| 在线观看精品视频| 亚洲成在线观看| 欧美日韩精品久久久| 亚洲欧美成人网| 香蕉成人伊视频在线观看| 国产香蕉久久精品综合网| 蜜臀av性久久久久蜜臀aⅴ| 久久先锋资源| 99亚洲一区二区| 亚洲欧美亚洲| 亚洲激情一区二区三区| 亚洲乱码一区二区| 国产伦精品一区二区三区四区免费| 久久精品一级爱片| 媚黑女一区二区| 亚洲视频欧美在线| 性亚洲最疯狂xxxx高清| 亚洲精品国产欧美| 亚洲女优在线| 亚洲每日在线| 性欧美xxxx视频在线观看| 亚洲激情一区二区| 亚洲欧美日韩区| 亚洲精品少妇| 国产欧美 在线欧美| 午夜精品久久久久久久白皮肤| 亚洲视频一区二区| 国语对白精品一区二区| 亚洲久色影视| 国自产拍偷拍福利精品免费一| 亚洲国产精品一区制服丝袜 | 一区视频在线看| 亚洲蜜桃精久久久久久久| 狠狠狠色丁香婷婷综合激情| 一区二区免费在线视频| 亚洲人体影院| 欧美在线视频观看| 午夜精品福利视频| 欧美精品一区二区三区很污很色的| 久久aⅴ国产欧美74aaa| 欧美精品videossex性护士| 老妇喷水一区二区三区| 国产精品爽黄69| 日韩视频在线观看免费| 亚洲国产三级| 久久久久久夜| 久久免费视频在线观看| 国产精品国产三级国产普通话蜜臀| 欧美 日韩 国产 一区| 国产日韩欧美自拍| 亚洲天堂成人在线观看| 亚洲一级网站| 欧美日本一区| 欧美大胆成人| 激情综合在线| 久久久免费精品视频| 欧美制服第一页| 国产精品国码视频| 野花国产精品入口| 亚洲香蕉伊综合在人在线视看| 欧美精品在线免费播放| 欧美国产日韩二区| 亚洲欧洲美洲综合色网| 蜜臀99久久精品久久久久久软件 | 亚洲激情影院| 亚洲精品中文字幕女同| 欧美高清免费| 欧美大片网址| 亚洲国产视频一区| 欧美成人免费全部观看天天性色| 欧美黄色片免费观看| 亚洲黄色大片| 欧美激情亚洲一区| 正在播放日韩| 久久精品免费看| 好看的亚洲午夜视频在线| 欧美伊人影院| 欧美激情按摩在线| 正在播放亚洲一区| 国产欧美韩日| 久久精品一区二区三区中文字幕| 久久久久久一区二区| 亚洲黑丝在线| 欧美性生交xxxxx久久久| 亚洲一区欧美一区| 久久久午夜视频| 最新高清无码专区| 欧美性事免费在线观看| 先锋影音久久久| 久久本道综合色狠狠五月| 欧美一区二区三区免费视频| 久久午夜激情| 亚洲免费成人av电影| 国产精品无码永久免费888| 亚洲欧美日本视频在线观看| 麻豆精品精品国产自在97香蕉| 1204国产成人精品视频| 欧美日韩一区精品| 久久精品国产亚洲5555| 亚洲国产日韩欧美| 亚洲欧美精品在线| 在线视频成人| 国产精品伦理| 女仆av观看一区| 羞羞答答国产精品www一本| 亚洲高清av在线| 欧美中文字幕在线播放| 亚洲精品一区二区三区福利| 国产精品普通话对白| 免费黄网站欧美| 亚洲欧洲av一区二区| 欧美激情导航| 久久久精彩视频| 一本色道久久综合| 黄色精品一区| 国产精品五月天| 欧美激情在线播放| 久久一区二区三区国产精品 | 欧美在线三级| 久久久久在线观看| 一区二区电影免费观看| 一区二区在线视频播放| 国产精品日韩欧美综合| 免费日韩av| 久久综合色婷婷| 久久久久久一区| 性欧美大战久久久久久久免费观看| 99re6热在线精品视频播放速度|