XYNUOJ過河問題

2021-08-21 20:51:29 字數 988 閱讀 3630

時間限制: 1 sec  記憶體限制: 64 mb

提交: 19  解決: 11

您該題的狀態:已完成

在漆黑的夜裡,n位旅行者來到了一座狹窄而且沒有護欄的橋邊。如果不借助手電筒的話,大家是無論如何也不敢過橋去的。不幸的是,n個人一共只帶了乙隻手電筒,而橋窄得只夠讓兩個人同時過。如果各自單獨過橋的話,n人所需要的時間已知;而如果兩人同時過橋,所需要的時間就是走得比較慢的那個人單獨行動時所需的時間。問題是,如何設計乙個方案,讓這n人盡快過橋。 

第一行是乙個整數t(1<=t<=20)表示測試資料的組數 每組測試資料的第一行是乙個整數n(1<=n<=1000)表示共有n個人要過河。每組測試資料的第二行是n個整數si,表示此人過河所需要花時間。(0

輸出所有人都過河需要用的最少時間

1

41 2 5 10

17
(**如下):

#include#includeusing namespace std;

/*n=1/2 所有人過去即可

n=3,用時最短的和用時最長的一起,最短的回來,再和剩下的過去

n>=4;(1)讓用時最短的和最長的過去,再回來,再和第二長的人過去,迴圈

(2)用時最短的和第二短的一起,最短的回來最長的和第二長的過去,第二短回來,迴圈操作

兩者選最短的方法。剩下不足四個人時候結束迴圈

*/int a[1005];

int main()

else

n -= 2;

}if(n == 3)

sum += a[1] + a[0] + a[2];

else if(n == 2)

sum += a[1];

else

sum += a[0];

printf("%d\n",sum);

}return 0;

}

xynuoj迷宮問題

時間限制 1 sec 記憶體限制 128 mb 提交 狀態 討論版 設有乙個n n方格的迷宮,入口和出口分別在左上角和右上角。迷宮格仔中分別放有0和1,0表示可通,1表示不能,迷宮走的規則如下圖所示 即從某點開始,有八個方向可走,前進方格中數字為0時表示可通過,為1時表示不可通過,要另找路徑。找出一...

xynuoj 汽車加油問題

時間限制 1 sec 記憶體限制 128 mb 提交 13 解決 12 提交 狀態 討論版 一輛汽車加滿油後可行駛n公里。旅途中有若干個加油站。設計乙個有效演算法,指出應在哪些加油站停靠加油,使沿途加油次數最少。設計任務 對於給定的n和k個加油站位置,計算最少加油次數 第一行有2個正整數n和k,表示...

XYNUOJ 揹包問題

時間限制 3 sec 記憶體限制 64 mb 提交 70 解決 49 您該題的狀態 已完成 現在有很多物品 它們是可以分割的 我們知道它們每個物品的單位重量的價值v和重量w 1 v,w 10 如果給你乙個揹包它能容納的重量為m 10 m 20 你所要做的就是把物品裝到揹包裡,使揹包裡的物品的價值總和...