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

SRM 146 DIV 2 1000

Problem Statement

    

A well-known riddle goes like this: Four people are crossing an old bridge. The bridge cannot hold more than two people at once. It is dark, so they can't walk without a flashlight, and they only have one flashlight! Furthermore, the time needed to cross the bridge varies among the people in the group. For instance, let's say that the people take 1, 2, 5 and 10 minutes to cross the bridge. When people walk together, they always walk at the speed of the slowest person. It is impossible to toss the flashlight across the bridge, so one person always has to go back with the flashlight to the others. What is the minimum amount of time needed to get all the people across the bridge?

In this instance, the answer is 17. Person number 1 and 2 cross the bridge together, spending 2 minutes. Then person 1 goes back with the flashlight, spending an additional one minute. Then person 3 and 4 cross the bridge together, spending 10 minutes. Person 2 goes back with the flashlight (2 min), and person 1 and 2 cross the bridge together (2 min). This yields a total of 2+1+10+2+2 = 17 minutes spent.

You want to create a computer program to help you solve new instances of this problem. Given an vector <int> times , where the elements represent the time each person spends on a crossing, your program should return the minimum possible amount of time spent crossing the bridge.

Definition

    
Class: BridgeCrossing
Method: minTime
Parameters: vector <int>
Returns: int
Method signature: int minTime(vector <int> times)
(be sure your method is public)
    很有意思的一個題目,大概是說有n個人(1<=n<=6)要過一個獨木橋,獨木橋每次最多只能過2個人。過橋必須要燈籠,而且只有一盞燈籠。如果2個人一起過橋,所花時間由那個需要最長時間的人決定。問怎么過橋所需要的時間最短。
    由于題目的數據量不是很大,我直接用dfs搜了下所有的情況然后取最小的時間。貌似還有數學方法能很輕松的解決,不過還沒想到。
#include <iostream>
#include 
<vector>
using namespace std;

class BridgeCrossing{
public:
    
int len,time,cross[6],best;
    
void dfs(int n,bool flash,vector<int> times);
    
int minTime(vector<int> times);
}
;
void BridgeCrossing::dfs(int n, bool flash, vector<int> times){
    
if(n==0){
        best
=(best>time)?time:best;
        
return;
    }

    
if(flash){
        
for(int i=0;i<len;i++)
            
for(int j=i+1;j<len;j++)
                
if(cross[i] && cross[j]){
                    cross[i]
=cross[j]=false;
                    time
+=max(times[i],times[j]);
                    dfs(n
-2,!flash,times);
                    time
-=max(times[i],times[j]);
                    cross[i]
=cross[j]=true;
                }

    }

    
else{
        
for(int i=0;i<len;i++)
            
if(!cross[i]){
                cross[i]
=true;
                time
+=times[i];
                dfs(n
+1,!flash,times);
                time
-=times[i];
                cross[i]
=false;
            }

    }

}

int BridgeCrossing::minTime(vector<int> times){
    best
=INT_MAX;
    len
=times.size();
    time
=0;
    
for(int i=0;i<6;i++) cross[i]=true;
    
if(len==1) best=times[0];
    
else dfs(len,true,times);
    
return best;
}

posted on 2009-05-27 00:59 極限定律 閱讀(665) 評論(1)  編輯 收藏 引用 所屬分類: TopCoder

評論

# re: SRM 146 DIV 2 1000 2010-03-05 11:05 3214668848

在劉汝佳的《算法藝術與信息學競賽》上貪心算法練習題有這么一個題,應該是貪心可以吧  回復  更多評論   

<2009年5月>
262728293012
3456789
10111213141516
17181920212223
24252627282930
31123456

導航

統計

常用鏈接

留言簿(10)

隨筆分類

隨筆檔案

友情鏈接

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲精选在线观看| 国产精品久久久久久久9999| 黄色综合网站| 久久成人一区| 女生裸体视频一区二区三区| 亚洲日本aⅴ片在线观看香蕉| 玖玖综合伊人| 一区二区日韩免费看| 亚洲影院免费观看| 伊人伊人伊人久久| 国产精品高潮久久| 国产毛片一区二区| 欧美精选在线| 欧美一区二区三区免费视| 亚洲丰满在线| 久久精品一区二区| 亚洲精品一级| 久久久久久亚洲精品杨幂换脸| 亚洲成色777777女色窝| 国产精品免费区二区三区观看| 麻豆精品在线观看| 中文日韩在线视频| 国产一区再线| 欧美日韩一级视频| 久久裸体艺术| 亚洲欧洲一区二区三区在线观看| 欧美一区二区三区四区夜夜大片| 亚洲国产美女久久久久| 国产精品h在线观看| 欧美mv日韩mv国产网站app| 欧美一区激情| 欧美日韩福利| 欧美日韩国产精品成人| 国产裸体写真av一区二区| 亚洲福利av| 国产在线国偷精品产拍免费yy| 亚洲国产婷婷香蕉久久久久久99| 午夜精品短视频| 亚洲欧美第一页| 亚洲一区在线播放| 欧美成人蜜桃| 亚洲娇小video精品| 欧美一区二区在线播放| 欧美特黄一级| 国产精品电影网站| 亚洲第一精品夜夜躁人人躁| 亚洲综合色视频| 亚洲国产精品一区二区久| 亚洲精品乱码久久久久久蜜桃91| 亚洲国产精品www| 久久国产日韩欧美| 国产精品国产自产拍高清av| 亚洲国产精品黑人久久久| 欧美一区二区三区男人的天堂| 亚洲福利精品| 欧美成人自拍视频| 欧美日韩国产综合视频在线观看中文| 一区视频在线| 久久久青草青青国产亚洲免观| 亚洲一区中文| 久久精品国产一区二区电影| 国产精品免费小视频| 日韩一级欧洲| 久久国产精品久久精品国产| 久久高清福利视频| 香蕉成人伊视频在线观看 | 99热精品在线| 午夜精品久久久久久久| 久久人人精品| 亚洲国产三级| 最新国产成人av网站网址麻豆| 欧美多人爱爱视频网站| 亚洲美女视频在线免费观看| 亚洲大胆视频| 欧美人妖在线观看| 亚洲欧美日韩精品久久久| 性色av一区二区三区| 久久精品国产一区二区三| 国产有码一区二区| 欧美国产91| 欧美日韩亚洲国产一区| 香蕉久久一区二区不卡无毒影院 | 欧美日韩一区视频| 午夜性色一区二区三区免费视频| 亚洲午夜一区二区| 欧美成人一区二区在线 | 亚洲欧美日韩在线不卡| 亚洲一区二区三区久久| 国内在线观看一区二区三区| 艳女tv在线观看国产一区| 亚洲免费在线看| 午夜精品久久久久久99热| 国内精品视频666| 亚洲精品一区二区三区婷婷月| 国产精品亚洲综合久久| 日韩一二三在线视频播| 亚洲视频在线观看免费| 亚洲第一区在线观看| 在线综合视频| 欧美日韩一区二区三区免费| 欧美一区二区网站| 嫩草国产精品入口| 午夜欧美视频| 欧美成人69| 久久九九免费| 亚洲在线一区| 欧美精品一区三区| 欧美制服丝袜第一页| 男人的天堂亚洲| 欧美在线播放一区二区| 欧美激情影院| 国产午夜亚洲精品理论片色戒 | 欧美一区91| 欧美精品在线极品| 久久伊人亚洲| 久久天天躁夜夜躁狠狠躁2022 | 午夜精品999| 亚洲午夜未删减在线观看| 亚洲毛片视频| 在线观看视频亚洲| 欧美一区成人| 午夜精品久久久久久久蜜桃app| 欧美激情亚洲| 亚洲高清不卡| 亚洲电影免费在线观看| 亚洲欧美日韩国产综合在线| 一区二区三区日韩欧美| 亚洲午夜av| 一本到12不卡视频在线dvd| 久久精品在线免费观看| 久久久噜噜噜久久中文字免| 国产欧美日韩中文字幕在线| 亚洲影院免费观看| 亚洲视频一区| 夜夜精品视频| 欧美精品一区二区三区很污很色的| 久久中文久久字幕| 红杏aⅴ成人免费视频| 欧美一区二区三区在线播放| 欧美一区二区| 国产偷国产偷亚洲高清97cao | 欧美一区二区高清在线观看| 午夜在线电影亚洲一区| 国产乱肥老妇国产一区二| 亚洲欧美日韩国产综合精品二区| 亚洲欧美国产毛片在线| 国产精品老女人精品视频| 亚洲综合丁香| 久久久综合精品| 最新国产の精品合集bt伙计| 噜噜噜躁狠狠躁狠狠精品视频| 欧美成人精品三级在线观看| 亚洲国产日韩欧美| 欧美国产日韩一区二区三区| 亚洲精品视频在线观看网站| 亚洲精品四区| 亚洲免费视频一区二区| 国产欧美日韩综合一区在线观看| 亚洲欧美日韩国产另类专区| 久久久久久尹人网香蕉| 在线欧美影院| 欧美日韩国产一区二区| 亚洲欧美激情一区二区| 久久免费视频在线| 91久久中文| 欧美亚洲第一区| 久久激情中文| 亚洲精品乱码久久久久久日本蜜臀 | 亚洲国产精品久久精品怡红院 | 黄色av日韩| 欧美日韩ab| 欧美在线免费观看| 亚洲视频www| 国产拍揄自揄精品视频麻豆| 久久噜噜亚洲综合| 亚洲一区二区综合| 欧美wwwwww| 亚洲欧美国产高清| 亚洲国产精品久久久久秋霞影院 | 亚洲主播在线观看| 黄色精品一区| 欧美日韩亚洲综合| 久久久久国产免费免费| 99视频精品免费观看| 久久亚洲捆绑美女| 亚洲专区免费| 亚洲理论在线观看| 国产一区二区精品在线观看| 亚洲香蕉成视频在线观看| 久久久久欧美| 午夜伦欧美伦电影理论片| 亚洲人成欧美中文字幕| 国产日韩精品一区| 亚洲丝袜av一区| 亚洲国产99| 毛片av中文字幕一区二区| 国产精品一级久久久| 欧美国产日韩精品| 久久夜色精品亚洲噜噜国产mv| 亚洲午夜精品福利|