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

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>
            亚洲欧美日韩精品久久亚洲区 | 亚洲免费视频网站| 国产亚洲va综合人人澡精品| 久久久一区二区| 亚洲欧美视频| 男女精品视频| 夜夜夜精品看看| 亚洲国产精品嫩草影院| 亚洲一区免费| 国产精品美女久久久免费| 一区二区成人精品| 国产精品九九久久久久久久| 麻豆9191精品国产| 亚洲夜间福利| 亚洲国产精品毛片| 亚洲欧美视频在线观看| 亚洲精品国产精品国自产在线| 欧美日韩人人澡狠狠躁视频| 亚洲制服欧美中文字幕中文字幕| 久久婷婷麻豆| 午夜精品久久久久久久蜜桃app| 黄色欧美日韩| 裸体女人亚洲精品一区| 亚洲午夜久久久| 亚洲精品视频在线播放| 久久久亚洲影院你懂的| 亚洲女同精品视频| 亚洲国产成人久久| 国产喷白浆一区二区三区| 欧美精品三级日韩久久| 久久人人爽人人爽| 欧美一区视频在线| 亚洲男人的天堂在线| 久久天堂av综合合色| 亚洲欧美在线看| 亚洲一品av免费观看| 日韩视频免费观看高清完整版| 亚洲高清免费| 亚洲免费观看在线观看| 亚洲午夜精品| 欧美成人xxx| 亚洲精品在线电影| 久久久久网站| 亚洲视频成人| 欧美一区二区久久久| 久久九九99视频| 久久综合狠狠综合久久激情| 欧美不卡视频一区| 国产精品视频成人| 在线观看日韩| 久久亚洲国产精品一区二区| 亚洲一区二区久久| 欧美精品一区二区三区四区| 欧美日韩亚洲另类| 国产精品爽爽爽| 亚洲国产一区二区三区青草影视 | 欧美日韩中文字幕在线视频| 国产日韩精品久久| 亚洲国产日本| 久久久xxx| 中文精品在线| 欧美日本在线看| 亚洲国产一区在线观看| 久久成人一区二区| 亚洲卡通欧美制服中文| 久久午夜电影| 精品粉嫩aⅴ一区二区三区四区| 亚洲永久在线| 91久久精品网| 美日韩精品免费观看视频| 国产精品美女一区二区| 亚洲少妇自拍| 亚洲精品日韩综合观看成人91| 久久久精品一区二区三区| 国产欧美日韩亚洲精品| 午夜精品av| 亚洲一区美女视频在线观看免费| 欧美日韩爆操| 亚洲一区二区三| 亚洲无人区一区| 欧美午夜不卡视频| 亚洲欧美影音先锋| 亚洲视频二区| 国产主播精品| 欧美福利视频网站| 欧美日韩精品免费观看| 亚洲专区一区| 亚洲在线黄色| 激情久久五月| 亚洲激情av在线| 欧美激情在线观看| 欧美国产先锋| 午夜精品久久一牛影视| 欧美一区二区免费观在线| 亚洲国产精品久久人人爱蜜臀| 亚洲成色最大综合在线| 国产精品国产a级| 久久久之久亚州精品露出| 欧美激情在线有限公司| 美女脱光内衣内裤视频久久网站| 久久aⅴ国产欧美74aaa| 国语精品一区| 久久久www| 欧美在线视频日韩| 国内综合精品午夜久久资源| 久久人人爽人人爽爽久久| 欧美一区二区三区在| 亚洲区一区二| 久久精品卡一| 亚洲欧美色一区| 欧美国产日韩亚洲一区| 欧美一区二区网站| 欧美美女福利视频| 欧美va天堂| 国产精品一二三视频| 99国产精品视频免费观看一公开| 在线播放视频一区| 欧美一区亚洲| 亚洲欧美日韩精品久久久久 | 欧美成人精品h版在线观看| 亚洲日本中文字幕| 午夜一区二区三区在线观看| 狠狠色狠狠色综合人人| 亚洲国产欧美在线人成| 国产精品久久毛片a| 亚洲精品在线观看免费| 亚洲大片免费看| 亚洲午夜伦理| 日韩亚洲在线观看| 久久一二三国产| 米奇777在线欧美播放| 欧美午夜剧场| aⅴ色国产欧美| 亚洲第一天堂无码专区| 欧美一级在线视频| 久久五月天婷婷| 欧美一级久久久| 欧美美女bb生活片| 欧美黑人国产人伦爽爽爽| 国产手机视频精品| 亚洲专区一区| 亚洲综合社区| 欧美视频免费| 日韩视频免费观看高清完整版| 91久久精品一区二区别| 欧美久久综合| 亚洲女同同性videoxma| 欧美成人免费va影院高清| 日韩午夜三级在线| 国产欧美一区二区三区国产幕精品 | 美女精品一区| 亚洲三级免费电影| 国产日韩精品综合网站| 久久综合亚洲社区| 亚洲欧美日韩国产中文 | 久久香蕉国产线看观看av| 狠狠色狠狠色综合日日tαg | 久久久久久久波多野高潮日日 | 国产亚洲va综合人人澡精品| 亚洲国产一区二区三区高清| 亚洲精品日韩综合观看成人91| 欧美亚洲综合另类| 久久电影一区| 国产亚洲综合精品| 99精品视频网| 亚洲精品乱码久久久久久久久| 亚洲老司机av| 亚洲黄色片网站| 欧美91精品| 日韩视频免费大全中文字幕| 亚洲第一黄色网| 黄色一区二区三区四区| 亚洲人成亚洲人成在线观看| 久久久久久久97| 国产精品在线看| 久久国产一区二区三区| 久久人体大胆视频| 亚洲人www| 欧美激情综合亚洲一二区| 亚洲精品国产精品国产自| 亚洲一区二区三区国产| 国产综合视频在线观看| 欧美精品一区二区三区在线看午夜| 亚洲一区精品电影| 亚洲人成亚洲人成在线观看图片| 久久夜色精品国产| 亚洲综合国产| 一区二区三区欧美日韩| 在线观看日韩av电影| 国产精品va在线播放| 欧美激情自拍| 老鸭窝毛片一区二区三区| 欧美综合国产精品久久丁香| 日韩亚洲不卡在线| 亚洲精品女人| 欧美刺激性大交免费视频| 亚洲欧美中文日韩v在线观看| 亚洲人成人一区二区三区| 一区二区三区亚洲| 国产一区二区三区av电影 |