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

a tutorial on computer science

  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
  21 隨筆 :: 0 文章 :: 17 評論 :: 0 Trackbacks
        題目的意思很簡單,給出N個正整數,求最大的,長度大于K的某一段的平均值。好吧,這句聽起來有點拗口。數學表達式就是 Max(ave(i,j))   (j-i>=K)。
       這題是去年百度之星第二場比賽的一道題,煞費苦心不會做,那時候看了論文也不會做。過了快一年了,今天終于把它A掉了。。。
      
       首先,ave(i,j)可以變形為一個式子, ave(i,j) = (sum[j] - sum[i-1]  ) / (j - i + 1) 。
       這個式子要表達什么意思呢?表示j點到i點得斜率!如此神奇的想法。。。
      變成斜率之后,問題遠遠沒有得到解決。問題變成了給出N個點的坐標,求這N個點任意連線的最大斜率。最普通的辦法:從前到后枚舉N個點,再枚舉前0到i-k個點,比較的出最大斜率。但是通過作圖我們可以得出一個結論,對于三個點,a,b,c,如果ca的斜率比cb的大,那么以后任意一個點,到點b的斜率都不可能比到a和c的大。所以這時候要舍棄掉b點。所以在維護前面0,i-K個點得時候,如果出現了上述提到的情況,則刪除點b,好了,這樣復雜度最壞情況下還是N^2。我們繼續想,當出現一個新的點得時候,真的要枚舉前面所有的點嗎?我們只要找到維護的點到當前點得切線就好了,這個可以用二分查找找出來,比較麻煩。最后一步神優化:當當前維護的點得前面的點不是最大斜率的時候,以后的點也不可能是最大斜率。這個自己證明去吧~
     這個題煞費苦心的想了一天,明白怎么回事了,發現結論很簡單。但是交到hdoj上的時候,TLE了。沒耐心看了discuss,原來是scanf要自己寫。不想寫,百度代碼,發現有個神人寫了五十行的代碼,未自己寫輸入,交,A之。原來是自己的代碼太冗余了。于是便仿照他的寫法,發現問題很簡單,一切很明了~A之。代碼如下:
//by bigrabbit

#include 
<stdio.h>

typedef 
struct
{
  
int x,y;
}
node;
node queue[
100010],tmp;
int head,tail;

double res;

int N,K,sum[100010];

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


long long xmul(node a,node b,node c)
{
   
return (long long)(c.y-a.y)*(b.x-a.x) - (long long)(b.y - a.y)*(c.x - a.x) ;
}


int main()
{
    
int i;
   
while(scanf("%d%d",&N,&K)!=EOF)   
   
{
     sum[
0= 0;
     
for(i=1;i<=N;i++)
     
{
        scanf(
"%d",&sum[i]);
        sum[i] 
+= sum[i-1];
     }

  
     head 
= tail = 0;
     res 
= 0.0;
    
     
for(i=K;i<=N;i++)
     
{
        tmp.x 
= i-K;
        tmp.y 
= sum[i-K];
        
while(head - tail >= 2 && xmul(queue[head-2],queue[head-1],tmp) <= 0 ) 
         head
--;
        queue[head
++= tmp;
        
         node now;
        now.x 
= i;now.y = sum[i];
        
while(head - tail >= 2 && xmul(queue[tail],queue[tail+1],now) >= 0 )  
          tail
++;
   
        res 
= max(res,(double)(sum[i] - queue[tail].y)/(double)(i - queue[tail].x));
     }

    printf(
"%.2f\n",res);
   }

   
return 0;
}

posted on 2012-03-08 16:27 bigrabbit 閱讀(1018) 評論(0)  編輯 收藏 引用
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美一级播放| 亚洲欧美一区二区三区极速播放| 久久亚洲综合色一区二区三区| 亚洲欧美日韩精品久久| 亚洲婷婷在线| 久久se精品一区二区| 久久久精品动漫| 老司机精品视频一区二区三区| 久久国产直播| 米奇777在线欧美播放| 久久九九热免费视频| 久久精品亚洲精品国产欧美kt∨| 久久福利毛片| 欧美电影免费观看高清| 欧美日韩成人一区二区| 夜夜爽99久久国产综合精品女不卡 | 免费人成精品欧美精品| 免费观看久久久4p| 欧美大片91| 国产视频在线一区二区| 亚洲日本成人网| 亚洲午夜精品在线| 美国成人毛片| 一区二区三区不卡视频在线观看 | 野花国产精品入口| 午夜欧美大片免费观看 | 久久aⅴ国产欧美74aaa| 欧美激情亚洲另类| 国产日韩欧美成人| 娇妻被交换粗又大又硬视频欧美| 99国产精品国产精品久久 | 亚洲精品少妇30p| 久久成人综合网| 亚洲国产成人午夜在线一区| 制服丝袜激情欧洲亚洲| 久久免费视频观看| 国产伦精品一区二区三区四区免费| 亚洲第一区中文99精品| 西西裸体人体做爰大胆久久久| 亚洲国产乱码最新视频| 久久久久se| 国产精品区二区三区日本| 日韩写真在线| 亚洲电影在线播放| 久久国产手机看片| 国产欧美精品在线播放| 在线视频精品| 亚洲国产成人av在线| 久久米奇亚洲| 亚洲国产精品www| 久久蜜臀精品av| 午夜老司机精品| 国产日韩一区二区三区在线播放| 亚洲欧美成人| 亚洲午夜小视频| 国产精品久久久久久久久久三级| 一区二区免费在线视频| 亚洲日韩欧美视频| 欧美激情综合网| aa国产精品| aa级大片欧美三级| 欧美亚洲成人网| 午夜精品久久久久久久99热浪潮| 在线亚洲欧美视频| 欧美自拍偷拍午夜视频| 亚洲欧美日韩精品一区二区| 免费的成人av| 亚洲大胆视频| 欧美成人综合在线| 欧美成人亚洲| 一区二区三区高清视频在线观看| 亚洲国产天堂久久综合网| 欧美不卡三区| 夜夜嗨av色一区二区不卡| 99www免费人成精品| 国产精品综合久久久| 久久久久久精| 欧美成人免费观看| 亚洲一区二区欧美| 久久狠狠婷婷| 最近中文字幕日韩精品 | 国产精品亚洲网站| 久久久av毛片精品| 免费观看30秒视频久久| 在线亚洲国产精品网站| 午夜精品一区二区三区在线| 在线看一区二区| 91久久精品国产91久久性色| 欧美日韩在线视频一区二区| 久久精品视频在线播放| 裸体歌舞表演一区二区| 亚洲无线一线二线三线区别av| 亚洲欧美在线网| 亚洲人成啪啪网站| 亚洲欧美日韩天堂一区二区| 91久久极品少妇xxxxⅹ软件| 一区二区三区www| 亚洲高清资源综合久久精品| 亚洲少妇在线| 亚洲日本黄色| 欧美永久精品| 亚洲男人av电影| 欧美成在线视频| 久久野战av| 国产精品久久久久久户外露出| 欧美成人三级在线| 国产精品综合网站| 日韩视频免费| 亚洲国产精品va在线看黑人| 欧美一区2区视频在线观看| 亚洲开发第一视频在线播放| 欧美一区不卡| 欧美亚洲一区二区在线观看| 欧美久久电影| 欧美顶级艳妇交换群宴| 国产视频久久久久| 亚洲视屏在线播放| 99re66热这里只有精品3直播| 久久久国产亚洲精品| 欧美在线观看一区二区| 欧美性一二三区| 9国产精品视频| 亚洲图片欧美午夜| 欧美日韩你懂的| 亚洲另类黄色| 在线午夜精品自拍| 欧美日韩一区精品| 欧美激情综合五月色丁香| 欧美日韩精品久久久| 男女视频一区二区| 亚洲欧美日韩另类| 你懂的国产精品永久在线| 99re视频这里只有精品| 久久精品一二三| 欧美中文字幕在线观看| 国产精品自在欧美一区| 亚洲一区免费看| 午夜精品网站| 国产精品捆绑调教| 亚洲视频香蕉人妖| 亚洲欧美中文字幕| 国产热re99久久6国产精品| 亚洲一区不卡| 欧美在线视频一区二区| 国产网站欧美日韩免费精品在线观看| 一区二区高清视频| 亚洲欧美日韩一区二区| 国产精品嫩草影院av蜜臀| 亚洲一区二区免费| 久久精品亚洲精品国产欧美kt∨| 国内精品久久久久国产盗摄免费观看完整版| 午夜精品久久久久久久| 免费精品99久久国产综合精品| 亚洲国产天堂久久国产91| 欧美精品在线免费观看| 亚洲专区在线| 美女日韩欧美| 欧美在线视频导航| 免费高清在线视频一区·| 最新高清无码专区| 欧美日韩亚洲国产精品| 亚洲欧美日韩在线| 久热精品视频| 日韩视频在线观看一区二区| 99在线精品观看| 欧美与欧洲交xxxx免费观看| 国产精品视频免费观看www| 欧美亚洲视频一区二区| 欧美大片在线看免费观看| 中日韩高清电影网| 国产日韩精品在线播放| 欧美搞黄网站| 亚洲欧美中文字幕| 欧美激情女人20p| 亚洲女人天堂成人av在线| 红桃视频一区| 欧美天天影院| 久久综合999| 亚洲永久精品大片| 亚洲国产精品尤物yw在线观看| 亚洲欧美国产高清| 亚洲国产精品久久久久秋霞不卡| 欧美日韩亚洲一区二区三区在线| 亚洲欧美日韩一区二区三区在线观看 | 这里只有精品视频在线| 国产伦一区二区三区色一情| 欧美国产另类| 久久国产一区| 亚洲一区二区三区乱码aⅴ蜜桃女| 久久在线视频| 欧美国产日韩在线| 亚洲日本电影在线| 久久久综合精品| 一区二区三区偷拍| 亚洲电影观看| 国产中文一区| 国产精品亚洲片夜色在线| 欧美日韩成人综合在线一区二区 | 国产精品日韩欧美一区二区三区| 免费人成网站在线观看欧美高清|