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

a tutorial on computer science

  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
  21 隨筆 :: 0 文章 :: 17 評論 :: 0 Trackbacks
    其實這個題不該想這么久的。。。
  題目的意思是說給一個正數序列,求其中的最長的最大值-最小值大于等于M  并且  小于等于K 的長度。
     咋一看起來很麻煩,想了想也很麻煩。怎么才能保證是最長的并且大于等于M還小于等于K呢?維護一個大于等于M且小于等于K的隊列?當加入新的元素之后,若不滿足題目給的條件,應該從兩個隊列的隊尾出隊,但是應該出哪一個?應該出絕對位置靠前面的那個。
     上面說了一大堆,忽略了一個問題:當兩個隊伍的元素之差小于M的時候,無論怎么出隊,都不可能再大于M了!所以當最大值減最小值小于M的時候,就不需要再出隊了。所以程序的自然語言描述就是,維護一個最長的,且<=K的隊列。
     上面的思路很麻煩,而且無法證明其正確性。后來發現這個題就是前幾天比賽A題加了一個條件>=M。好吧,這兩個條件是&&的關系,直接維護一個小于等于K的隊列即可,不用管那個M了,只要在求結果的時候判斷下就OK。代碼如下:
#include <stdio.h>

typedef 
struct
{
  
int pos,value;
}
node;

node queueMax[
1000010],queueMin[1000010];
int mhead,mtail,nhead,ntail;

int data[1000010];

int N,M,K;

int max(int a,int b)
{
    
if(a > b)
      
return a;
    
return b;
}

int main()
{
   
int res,i;
   
while(scanf("%d%d%d",&N,&M,&K)!=EOF)
   
{
     
for(i=0;i<N;i++)
       scanf(
"%d",&data[i]);
     res 
= 0;
     mhead 
= mtail = nhead = ntail = 0;
     node tmp 
= {0,data[0]};
     queueMax[mhead
++= queueMin[nhead++= tmp;
     
int start,end; start = 0; end = -1;
     
while(end < N - 1)
     
{
       
//入隊列,end++
       end++;
       
while(mtail != mhead && queueMax[mhead - 1].value < data[end])
         mhead
--;
       
while(ntail != nhead && queueMin[nhead - 1].value > data[end])       
         nhead
--;
         
       tmp.pos 
= end;
       tmp.value 
= data[end];
       queueMax[mhead
++= queueMin[nhead++= tmp;
       
       
       
//保持性質,更新隊列和start 
       
       
while(ntail!= nhead && mhead != mtail && (queueMax[mtail].value - queueMin[ntail].value >K))
       
{
       
if(queueMax[mtail].pos <= queueMin[ntail].pos)
         
{
            start 
= queueMax[mtail].pos + 1;
            mtail
++;
         }

         
else
         
{
            start 
= queueMin[ntail].pos + 1;
            ntail
++;
         }

       }

       
       
//找res
       if((queueMax[mtail].value - queueMin[ntail].value >= M && queueMax[mtail].value - queueMin[ntail].value<=K) && res < end - start + 1)
         res 
= end - start + 1;
         
     }

     printf(
"%d\n",res);
   }

   
return 0;
}

posted on 2012-03-09 14:38 bigrabbit 閱讀(925) 評論(0)  編輯 收藏 引用

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            在线亚洲激情| 性久久久久久久久| 亚洲国产成人在线播放| 国产精品视频精品| 国产精品一区一区三区| 永久免费精品影视网站| 亚洲国产毛片完整版| 一区二区三区四区五区精品视频| 欧美黑人一区二区三区| 日韩一级欧洲| 久久嫩草精品久久久精品一| 欧美另类69精品久久久久9999| 国产精品色一区二区三区| 欧美伊人久久| 亚洲美女视频在线观看| 欧美亚洲成人网| 亚洲欧洲日产国码二区| 欧美专区日韩视频| 一本色道**综合亚洲精品蜜桃冫 | 老鸭窝91久久精品色噜噜导演| 亚洲电影在线| 国产精品久久久久aaaa樱花| 亚洲人成人99网站| 正在播放日韩| 欧美色图首页| 亚洲精品裸体| 欧美大片免费| 欧美一区激情视频在线观看| 欧美日韩在线播| 亚洲一区二区三区在线看 | 久久久久国产精品一区| 亚洲国产综合视频在线观看 | 久久女同互慰一区二区三区| 亚洲欧美中文另类| 国产精品你懂的在线| 亚洲午夜av电影| 久久九九全国免费精品观看| 国产精品一区二区久久| 亚洲国产精品成人久久综合一区| 国产日韩精品久久久| 午夜精彩视频在线观看不卡| 亚洲精品综合精品自拍| 欧美另类高清视频在线| 蜜桃久久av一区| 老司机久久99久久精品播放免费 | 欧美二区在线播放| 欧美视频在线不卡| 亚洲高清视频一区二区| 国产视频一区三区| 免费久久久一本精品久久区| 国产精品婷婷| 国产精品99久久久久久久久| 一级日韩一区在线观看| 国产精品99久久久久久久久久久久| 亚洲国内在线| 久久久久久欧美| 99在线精品观看| 欧美成人高清| 欧美激情视频免费观看| 在线成人亚洲| 巨胸喷奶水www久久久免费动漫| 久久婷婷麻豆| 欧美精品亚洲精品| 性色av一区二区三区在线观看| 欧美在线在线| 99国产精品视频免费观看| 亚洲午夜精品国产| 好看不卡的中文字幕| 亚洲高清av在线| 日韩亚洲视频在线| 欧美视频日韩| 亚洲一区二区三区乱码aⅴ蜜桃女 亚洲一区二区三区乱码aⅴ | 午夜一区二区三视频在线观看| 亚洲欧美国产精品va在线观看| 久久九九国产精品| 久久综合一区二区| 亚洲国产天堂久久综合网| 老司机午夜精品| 亚洲美女视频在线观看| 亚洲欧美亚洲| 国产亚洲欧美日韩精品| 亚洲美女少妇无套啪啪呻吟| 亚洲一级在线| 国产一区二区三区免费观看| 久久久久综合| 亚洲精一区二区三区| 亚洲综合电影一区二区三区| 老司机午夜精品视频在线观看| 亚洲第一成人在线| 亚洲免费一在线| 国语自产精品视频在线看8查询8| 两个人的视频www国产精品| 亚洲黄色影片| 亚洲人成人77777线观看| 欧美日韩的一区二区| 欧美国产一区在线| 国产精品99久久久久久久女警| 久久久久久电影| 亚洲日本欧美日韩高观看| 亚洲国产精品成人精品| 久久精品日韩| 亚洲精品少妇网址| 久久精品二区三区| 国产一区成人| 欧美片第1页综合| 欧美在线观看天堂一区二区三区 | 亚洲综合精品自拍| 在线播放中文字幕一区| 国产精品国产三级国产专播精品人| 久久成人精品无人区| 久久免费的精品国产v∧| 一本久道久久久| 一区二区三区亚洲| 嫩草影视亚洲| 亚洲品质自拍| 久久久噜噜噜久久| 亚洲在线不卡| 日韩视频不卡| 欧美精品日韩| 久久尤物电影视频在线观看| 亚洲一区二区三区四区中文| 亚洲精品日韩在线观看| 欧美成年人视频| 9i看片成人免费高清| 亚洲成人在线视频播放| 欧美国产日韩一二三区| 久久精品一区二区三区不卡牛牛| 一区二区免费在线视频| 91久久精品国产91性色| 欧美高清自拍一区| 毛片一区二区三区| 久久久久亚洲综合| 久久国产精品久久久久久电车| 亚洲欧美日韩国产另类专区| 亚洲一区二区三区久久| 9色国产精品| 日韩视频二区| 99精品欧美一区二区三区| 亚洲国产一区在线| 亚洲精品欧美一区二区三区| 亚洲激情中文1区| 亚洲高清视频在线观看| 亚洲高清一区二区三区| 伊人成人网在线看| 亚洲国产欧美不卡在线观看| 在线国产精品一区| 最近中文字幕mv在线一区二区三区四区| 伊人色综合久久天天五月婷| 在线观看国产日韩| 亚洲国产人成综合网站| 亚洲精品一区二区三区樱花| 亚洲美女尤物影院| 亚洲欧美另类久久久精品2019| 亚洲欧美日韩国产成人| 久久久九九九九| 欧美va日韩va| 亚洲精品日本| 亚洲婷婷免费| 欧美在线播放一区| 欧美成人免费va影院高清| 欧美日本三区| 国产美女扒开尿口久久久| 国产一区二区三区无遮挡| 亚洲国产精品尤物yw在线观看| 亚洲欧洲在线免费| 亚洲欧美日韩一区二区三区在线| 欧美在线免费| 欧美大尺度在线观看| 亚洲精品一区二区在线观看| 亚洲午夜在线观看视频在线| 午夜视频在线观看一区| 麻豆9191精品国产| 久久99在线观看| 欧美大片18| 国产麻豆一精品一av一免费| 在线观看欧美日本| 亚洲午夜电影在线观看| 久久蜜桃精品| 一区二区三区高清在线观看| 久久9热精品视频| 欧美日韩国产一区二区| 国产中文一区二区| 国产午夜精品久久久久久久| 91久久精品国产91性色| 午夜精品久久久久久| 欧美超级免费视 在线| 亚洲一区在线观看视频 | 国产精品一二三视频| 亚洲国产成人av| 香蕉av777xxx色综合一区| 欧美激情小视频| 欧美一区二区三区在线观看视频| 欧美岛国激情| 亚洲第一页在线| 欧美在线免费观看亚洲| 一区二区三区日韩精品视频| 免费成人av在线看| 韩国美女久久| 欧美一区二区高清| 亚洲手机在线|