日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

两人过桥

發(fā)布時(shí)間:2025/3/15 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 两人过桥 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

兩人過(guò)橋(bridge.???)

問(wèn)題描述:
有 n 個(gè)人希望在晚上通過(guò)一座橋。在任何時(shí)刻,最多只能有兩個(gè)人在橋上,并且必須
要帶著手電筒才能通過(guò)橋。現(xiàn)在的麻煩是只有一個(gè)手電筒,所以必須安排某種順序,使得手
電筒可以被帶回去讓更多的人過(guò)橋(手電筒必須由人帶回,不可以從對(duì)岸扔過(guò)去)。
每個(gè)人都有不同的過(guò)橋時(shí)間,兩個(gè)人一起過(guò)橋所用的時(shí)間等于其中較慢的一個(gè)。你的
任務(wù)是要找出能在最短時(shí)間內(nèi)使所有人都過(guò)橋的方案。
輸入格式:
第一行是一個(gè)整數(shù) n。
接下來(lái)有 n 行,每一行給出一個(gè)人的過(guò)橋時(shí)間(整數(shù),單位:秒)。
每個(gè)人的過(guò)橋時(shí)間不超過(guò) 100 秒。
輸出格式:
輸出一行一個(gè)數(shù),表示所有人過(guò)橋的最短時(shí)間。
樣例輸入:
4
1
2
5
10

樣例輸出:
17
樣例解釋:
可以先讓 1 和 2 過(guò)橋,然后 1 回來(lái),讓 5 和 10 過(guò)橋,然后 2 再回來(lái)帶 1 一起過(guò)橋,時(shí)
間為:2+1+10+2+2=17。
數(shù)據(jù)限制:
40%的數(shù)據(jù)滿足:n<=100;
100%的數(shù)據(jù)滿足:n<=1000。

分析
貪心法

最簡(jiǎn)單的一個(gè)貪心策略是:讓一個(gè)最快的人來(lái)回帶人
但是顯然是錯(cuò)誤的比如4個(gè)人:1 1 100000 100000
最快的來(lái)回帶的話要:1+1+100000+1+100000=200003
但是如果先將1 1運(yùn)過(guò)去的話,然后1回來(lái),再讓100000 100000一起過(guò)去
再讓右邊的1來(lái)回一趟,就只要1+1+100000+1+1=100004,這樣顯然小了

所以第一種貪心的策略顯然是不合理的,下面換種貪心策略:
首先,慢的肯定是過(guò)了橋之后不回來(lái)了
就上面那種情況,我們就是先將最快的兩個(gè)帶過(guò)去,
然后快的一個(gè)過(guò)來(lái),讓兩個(gè)慢的過(guò)去,然后讓快的再回來(lái),……
但是這種貪心策略也不優(yōu),因?yàn)?#xff1a;
如果是1 10000 10000 10000,答案又不對(duì)了(還是第一種策略優(yōu))

結(jié)合以上兩點(diǎn),對(duì)于最慢的兩個(gè)人我們有兩種處理方法就是:
1、讓最快的人來(lái)回帶
2、讓最快的兩個(gè)人過(guò)去,再讓最慢的兩個(gè)一起過(guò)去,這樣就減少了最慢的重復(fù)計(jì)算

關(guān)于這個(gè)貪心策略的證明是:
首先,過(guò)橋速度排在第三名之后的人不可能擔(dān)任送回手電筒的任務(wù),原因是不如速度第一和第二的人送回來(lái)得高效。這樣,
當(dāng)前左岸速度最慢的人過(guò)橋后就不可能再回來(lái),那么我們可以優(yōu)先讓速度慢的過(guò)河,因?yàn)槠洳豢赡芊祷?#xff0c;先過(guò)后過(guò)等效。如此一來(lái),就可以得到上述的貪心策略。

程序:

var a:array[0..12000] of longint; n,i:longint; ans,x,y:int64;procedure kp(l,r:longint); var i,j,mid:longint; beginif l>=r then exit;i:=l;j:=r;mid:=a[(i+j) div 2];repeatwhile a[i]<mid do inc(i);while a[j]>mid do dec(j);if i<=j thenbegina[0]:=a[i];a[i]:=a[j];a[j]:=a[0];inc(i);dec(j);end;until i>j;kp(l,j);kp(i,r); end;beginassign(input,'bridge.in');assign(output,'bridge.out');reset(input);rewrite(output);readln(n);for i:=1 to n doread(a[i]);kp(1,n);ans:=0;i:=n;while true dobeginif i=2 then ans:=ans+a[2];if i=3 then ans:=ans+a[1]+a[2]+a[3];if i<=3 then break;x:=2*a[2]+a[1]+a[i];y:=2*a[1]+a[i]+a[i-1];if x<y then ans:=ans+x else ans:=ans+y;i:=i-2;end;write(ans);close(input);close(output); end.

轉(zhuǎn)載于:https://www.cnblogs.com/YYC-0304/p/9500070.html

總結(jié)

以上是生活随笔為你收集整理的两人过桥的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美高清日韩 | 好男人在线视频www 亚洲福利国产 | 亚洲精品中文字幕乱码三区91 | 亚洲欧洲一区二区 | 亚洲色图激情 | 精品国产一区二区视频 | 秘密基地电影免费版观看国语 | 久热久| www插插插 | 欧美成人免费在线观看视频 | 国产欧美日韩综合精品一区二区 | www.五月天com | 黄色xxxxx | 猫咪av在线 | 国产又粗又长又黄 | 成人av毛片| 亚洲一级理论片 | 亚洲午夜激情视频 | 国产jzjzjz丝袜老师水多 | 高潮av在线 | 成人国产一区二区 | 久久精品这里只有精品 | 午夜精品在线视频 | 99久久99久久精品国产片桃花 | 婷婷色吧 | 另类综合视频 | 可以免费看污视频的网站 | 全黄一级男人和女人 | 成片在线观看 | 欧美男人又粗又长又大 | 午夜视频www | 国产a网站 | 亚洲高清视频一区二区 | 97国产一区 | 激情视频在线播放 | 不卡中文字幕在线 | 加勒比av在线播放 | a级片在线看| 青青国产在线 | 中文字幕第页 | 香蕉视频免费看 | kendra lust free xxx| 在线免费看毛片 | 东北熟女一区二区三区 | 日韩日韩日韩日韩日韩 | 中文字幕精品亚洲 | 香蕉视频首页 | 小情侣高清国产在线播放 | 动漫玉足吸乳羞免费网站玉足 | 黄网在线看 | 国产古装艳史毛片hd | 亚洲第一页夜 | 蜜桃av噜噜一区二区三区麻豆 | 最新免费av网站 | 好姑娘在线观看高清完整版电影 | 伊人涩涩| 麻豆午夜| 国产情侣呻吟对白高潮 | 免费一级suv好看的国产网站 | 日本在线不卡一区二区三区 | 国产66页| 亚洲成年网 | 亚洲精品99久久久久中文字幕 | a视频免费在线观看 | 欧美激情15p| 午夜大片| 黑人黄色一级片 | 日韩伊人网 | 精品国产网 | 中文字幕一区二区人妻电影丶 | 亚洲av无码国产在丝袜线观看 | 国产私人影院 | av地址在线 | 欧美激情网 | 日韩欧美成人精品 | 99cao| 国产精品久久二区 | 亚洲www啪成人一区二区麻豆 | 国产婷婷一区二区三区久久 | 中国极品少妇videossexhd 就要干就要操 | 久久综合区| 中国a一片一级一片 | 无套内谢88av免费看 | 亚洲亚洲人成综合网络 | 欧美寡妇性猛交 | 私库av在线 | 国产精品中文字幕在线观看 | 东方伊甸园av在线 | 亚洲一区网站 | 久艹在线观看 | jizz性欧美17 | 国产网站无遮挡 | 欧美日韩精品区 | 亚洲天堂第一页 | 亚洲国产网站 | 天天天干 | 亚洲国产精品免费在线观看 | 夜夜嗨av一区二区三区网页 | 粗大挺进潘金莲身体在线播放 |