題目鏈結
簡單的貪心演算法,雖然我仍沒體會到貪心體現在**,「一條獨木舟最多只能乘坐兩個人」,開始沒注意這個條件,心想著揹包問題,找不出思路。於是借鑑的網上的思路自己寫的**。
題目思路: 先把各個人的體重排序,然後計算最重的人和最輕的人能否同乘一條舟,如果不能,則最重的人就要單獨乘坐一條舟,再求最輕的和第二重的人的和,依次比較。
#include
#include
#include
#include
using
namespace
std;
int main()
sort(a+1,a+n+1);//快排易錯點,從標號為1的位置到標號為n+1的位置,一共個n個元素
// for(int i=1;i<=n;i++)
// printf("%d ",a[i]);
int j=1,k=n,ans=0;
while(jif(a[j]+a[k]<=w)
if(a[j]+a[k]>w)
}if(j==k)
ans++;
printf("%d\n",ans);
}return
0;}
nyoj 71 獨木舟上的旅行
時間限制 3000 ms 記憶體限制 65535 kb 難度 2 描述 進行一次獨木舟的旅行活動,獨木舟可以在港口租到,並且之間沒有區別。一條獨木舟最多只能乘坐兩個人,且乘客的總重量不能超過獨木舟的最大承載量。我們要儘量減少這次活動中的花銷,所以要找出可以安置所有旅客的最少的獨木舟條數。現在請寫乙個...
NYOJ71獨木舟上的旅行
時間限制 3000 ms 記憶體限制 65535 kb 難度 2 描述 進行一次獨木舟的旅行活動,獨木舟可以在港口租到,並且之間沒有區別。一條獨木舟最多只能乘坐兩個人,且乘客的總重量不能超過獨木舟的最大承載量。我們要儘量減少這次活動中的花銷,所以要找出可以安置所有旅客的最少的獨木舟條數。現在請寫乙個...
nyoj71獨木舟上的旅行
時間限制 3000 ms 記憶體限制 65535 kb 難度 2 描述 進行一次獨木舟的旅行活動,獨木舟可以在港口租到,並且之間沒有區別。一條獨木舟最多只能乘坐兩個人,且乘客的總重量不能超過獨木舟的最大承載量。我們要儘量減少這次活動中的花銷,所以要找出可以安置所有旅客的最少的獨木舟條數。現在請寫乙個...