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

jake1036

編程之美1.8-----電梯調(diào)度算法

  編程之美-電梯調(diào)度算法

  一問題描述:
     所有的員工均在1樓進(jìn)電梯的時(shí)候,選擇所要到達(dá)的樓層。
     然后計(jì)算出停靠的樓層i,當(dāng)?shù)竭_(dá)樓層i的時(shí)候,電梯停止。
     所有人走出電梯,步行到所在的樓層中。
     求所有人爬的樓層數(shù)目和的最小值。 
 
二 問題解決方法:
    二 解決方案:
  (1)使用簡單的方法,直接將樓層從1到n開始遍歷
       sum(person[i] *  |i - j| ) 此表達(dá)式為一個(gè)雙重循環(huán),i與j均為1-n的循環(huán)。
       j下標(biāo)表示電梯停靠的樓層。
       person數(shù)組表示,對(duì)應(yīng)i層的下電梯的人數(shù)。此算法負(fù)責(zé)度為o(n*n)
       對(duì)應(yīng)的j是上述和為最小的一層即為所求。 上面的算法復(fù)雜度為o(n)
      
  (2)下面考慮一個(gè)簡單的算法,使其復(fù)雜度達(dá)到o(n)
      考慮假如電梯停靠在某一樓層i處,假設(shè)在i處下樓的客人為N2,
      在i以上樓層的客人數(shù)目為N3 ,在i一下樓層的客人數(shù)目為N1。
      且將電梯在i層停止時(shí),全部人員的路程之和記為T。
     
      那么加入電梯在i-1層停的話,則原來i層之上的人需要多爬一層,即增加了N3
      第i層的人需要多爬一層,則結(jié)果增加了N2,  i層之下的人則少爬了一層,結(jié)果減去N1
      所以第i-1層的結(jié)果為 T - N1 + N2 + N3 。即結(jié)果可以即為 T -(N1 - N2 - N3)
     
     
      下面考慮在i+1層的結(jié)果,若電梯在i+1層停止的話,原來i層之上的客戶都會(huì)少爬一層,
      則結(jié)果減少N3 ,而i層之下的人員則都會(huì)多爬一層即增加了N1 ,第i層的人員都會(huì)多爬一層
      即為增加了N2 。則結(jié)果為 T + N1 + N2 - N3
       
      綜上我們得出,
      (1)若N1 > N2 + N3的時(shí)候, 我們在第i-1層 選擇電梯停止最好。
      (2)若N1 + N2 < N3的時(shí)候, 我們選擇在第i+1層停止電梯最好。 
       
      下面我們可以先計(jì)算出來當(dāng)i=1時(shí)候的T ,然后判斷是否需要在i+1層停止,若是i+1層的花費(fèi)
       大于i層,則我們可以繼續(xù)計(jì)算,否則退出。
  三 代碼如下:
     

#include <iostream>
  
using namespace std ;
 
 
const int N = 10 ;
 
int person[N+1= {0 , 2 , 5 , 7 , 3 , 5 , 2 , 62 , 6 , 3} ; 
  
  
int floor2()
  
{
      
//先計(jì)算出在第一層停止的時(shí)候 所需要的花費(fèi)
       int T = 0;
       
int N1 = 0 ; //在第一層以下下的人數(shù) 
       int N2 = person[1] ; //在第一層處下的人數(shù) 
       int N3 = 0 ;      //在第一層之上下電梯的人數(shù) 
       int floor =  1 ;
       
for(int i = 2 ; i <= N ;i++//先計(jì)算出第1層停止需要爬取的樓層數(shù)目 
       {
         T 
+= person[i] * (i - 1) ;
         N3 
+= person[i] ;     
          
       }

        
       
for(int i = 2 ; i <= N ;i++)
       
{
         
if(N1 + N2 <= N3) //說明第i+1層的結(jié)果會(huì)大于第i層 
           {
               T 
+= N1 + N2 - N3 ;
               N1 
+= N2 ;
               N2 
= person[i] ; 
               N3 
-= person[i] ;
               floor 
= i ;
               
           }
     
           
else  //否則第i層的結(jié)果已經(jīng)最小,故不需要計(jì)算第i+1層 
           break ; 
            
       }
     
       
return floor ;
  }
 
  
  
  
int floor1() //使用簡單算法計(jì)算 
  {
      
int tempfloor = 0 ;
      
int min = 6553 ;//存儲(chǔ)最小值
      int floor = 1   ;//存儲(chǔ)停靠的樓層 
      int i , j ;
      
      
for( i = 1 ; i <= N ;i++//表示第i樓層電梯停靠 
      {
        tempfloor 
= 0 ;
                       
        
for( j = 1 ; j < i ;j++)      
            tempfloor 
+= (i - j) * person[j] ;       
                         
        
for(j = i + 1 ; j <= N ; j++)         
            tempfloor 
+= (j - i) * person[j] ;    
        
        
if(min > tempfloor)   
        
{
          min 
= tempfloor ;
          floor 
= i ;          
        }
       
        
     
//   cout<<"tempfloor"<<i<<":"<<tempfloor<<endl;                   
      }

      
return floor ;
  }

  
  
  
int main()
  
{      
    
int temp1 = floor1() ;  
    
int temp2 = floor2() ;  
    cout
<<temp1<<" "<<temp2<<endl ;
    getchar() ;
    
return 0 ;    
  }

    


            

posted on 2011-06-29 11:03 kahn 閱讀(4228) 評(píng)論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   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>
            激情成人亚洲| 亚洲人www| 免费成人高清| 欧美亚洲一区| 国产精品久久久久久久app| 亚洲深夜福利视频| 日韩视频在线一区二区三区| 欧美xxx成人| 亚洲精品四区| 亚洲欧洲日本国产| 欧美久久影院| 日韩一级二级三级| 亚洲乱码国产乱码精品精| 免费观看一区| 中日韩高清电影网| 妖精视频成人观看www| 欧美风情在线观看| 亚洲在线观看视频网站| 亚洲综合激情| 欧美性做爰毛片| 久久国产精品色婷婷| 久久久久久久激情视频| 亚洲国产99精品国自产| 亚洲国产精品一区制服丝袜| 欧美日韩黄色大片| 午夜在线电影亚洲一区| 午夜精品一区二区三区四区| 亚洲福利电影| 亚洲精品偷拍| 欧美在线免费看| 欧美国产视频一区二区| 欧美日韩国产三级| 一区二区三区免费看| 亚洲自拍都市欧美小说| 在线免费日韩片| 亚洲一区国产视频| 国产精品激情电影| 看片网站欧美日韩| 欧美激情欧美激情在线五月| 亚洲免费黄色| 亚洲欧美日韩在线综合| 亚洲精品国产精品国产自| 国产精品99久久久久久久久| 在线不卡免费欧美| 中文国产成人精品| 亚洲破处大片| 欧美一级艳片视频免费观看| 性一交一乱一区二区洋洋av| 亚洲国产日韩欧美在线图片| 亚洲欧美日韩在线不卡| 在线视频亚洲一区| 亚洲影院污污.| 黄色成人av网站| 亚洲一区二区黄| 亚洲精品免费在线播放| 一区二区久久久久| 最新日韩中文字幕| 久久激情五月丁香伊人| 中日韩视频在线观看| 蜜臀av性久久久久蜜臀aⅴ| 欧美一区二区成人6969| 欧美成人嫩草网站| 国精品一区二区三区| 欧美有码在线观看视频| 久久爱www| 国产专区综合网| 欧美一区激情| 久久综合久久88| 亚洲高清在线观看| 男人的天堂亚洲在线| 欧美韩国在线| 日韩亚洲精品电影| 欧美日韩一区在线视频| 一卡二卡3卡四卡高清精品视频| 在线亚洲一区二区| 国产精品成人aaaaa网站| 99国产精品视频免费观看| 亚洲综合精品四区| 国产欧美 在线欧美| 久久精品国产精品亚洲| 欧美高潮视频| 一区二区三区精品在线 | 亚洲免费中文字幕| 国产精品欧美日韩一区二区| 亚洲女人天堂成人av在线| 久久国产精品久久w女人spa| 国语自产精品视频在线看| 久久综合久久综合久久| 亚洲国产高清视频| 亚洲无吗在线| 国产中文一区二区三区| 欧美激情aaaa| 校园春色综合网| 亚洲国产一二三| 性欧美暴力猛交另类hd| 亚洲国产精品专区久久| 国产在线视频欧美| 免费观看一级特黄欧美大片| 国产精品99久久久久久久久| 快射av在线播放一区| 亚洲视频在线一区| 狠狠色伊人亚洲综合成人| 欧美精品久久99| 久久av一区二区三区漫画| 亚洲精品视频在线观看免费| 久久国产黑丝| 中国成人黄色视屏| 在线播放视频一区| 国产精品视频一二三| 欧美大片网址| 久久精品一本久久99精品| 一区二区三区四区五区精品| 免费观看国产成人| 欧美一区二区成人| 在线一区二区日韩| 亚洲国产导航| 国产一区二区日韩精品| 欧美日一区二区三区在线观看国产免| 久久精品视频在线看| 亚洲一级免费视频| 亚洲精品一区二区三区av| 美女视频黄免费的久久| 午夜宅男久久久| 在线一区二区三区做爰视频网站| 亚洲国产电影| 伊人久久大香线蕉综合热线| 国产欧美精品在线播放| 国产精品久久久久9999| 欧美日韩国产高清| 欧美激情久久久久| 男女精品网站| 欧美gay视频激情| 久久综合久久88| 久久精品国产亚洲一区二区三区| 亚洲男同1069视频| 亚洲自拍三区| 亚洲欧美视频一区二区三区| 亚洲午夜精品视频| 亚洲视频免费观看| 在线视频精品一| 一本色道久久综合亚洲精品小说| 日韩一区二区福利| 99国产精品视频免费观看一公开| 日韩图片一区| 亚洲丝袜av一区| 午夜电影亚洲| 久久精品导航| 欧美sm视频| 欧美激情在线有限公司| 欧美日韩一区二区在线| 欧美视频免费| 国产日韩一区在线| 激情久久久久| 亚洲人成啪啪网站| aa级大片欧美三级| 欧美亚洲一区二区在线| 久久婷婷影院| 欧美激情亚洲自拍| 日韩视频免费观看| 亚洲欧美日韩精品久久| 久久国产毛片| 欧美国产精品| 国产精品免费一区二区三区在线观看| 国产精品一区二区久激情瑜伽| 国产日韩欧美夫妻视频在线观看| 国产一区二区三区成人欧美日韩在线观看 | 9色国产精品| 一区二区91| 久久se精品一区精品二区| 久久全球大尺度高清视频| 欧美激情一区二区三区在线视频| 欧美日韩视频第一区| 国内精品嫩模av私拍在线观看 | 国产美女一区二区| 狠狠色丁香久久婷婷综合_中| 亚洲人体1000| 久久爱www久久做| 亚洲精品偷拍| 久久深夜福利免费观看| 欧美日韩午夜剧场| 国内精品久久久久久久果冻传媒| 日韩一级精品视频在线观看| 欧美一区二区精品| 亚洲二区在线| 欧美一级网站| 欧美三级乱码| 亚洲激情啪啪| 久久这里只有| 亚洲一级在线观看| 欧美成人r级一区二区三区| 国产女人精品视频| 一区二区成人精品| 欧美高清在线一区二区| 性久久久久久久久| 欧美午夜精品理论片a级按摩 | 欧美日韩综合在线| 亚洲精品一区二区三区婷婷月 | 亚洲免费av观看| 老妇喷水一区二区三区| 亚洲欧美国产高清va在线播|