Crossing River(貪心演算法)

2021-10-03 18:26:28 字數 869 閱讀 1911

#include#includeusing namespace std;

int f(int n,int a) //遞迴的思想

f(n/2,a);

}for(int i=1;i<=(n-1)/2;i++)

a[(n-1)/2+1]=a[n];

f((n-1)/2+1,a);

return sum;

}int main()

for(int i=0;itime[j+1])

swap(time[j],time[j+1]);

sum1+=(n-3)*time[1];

sum2=f(n,time)-1;

}cout《改了一下思路還是wrong answer

#include#includeusing namespace std;

int main()

for(int i=0;itime[j+1])

swap(time[j],time[j+1]);

if(n<=2)

if(i==1)

sum+=time[1];

else

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

}cout《但實際上一但推出兩種方案的時間表示式,**就可以簡化的很簡單了

我看到的乙個更簡單的**

#include#include#include#include#include#define inf 999999999

#define n 1001

using namespace std;

int a[n],dp[n];

int main()

return 0;

}

Crossing River 題解 貪心

t組資料 t 20 給你n個人 n 1000 過河,每個人都有權值,一條船,每次船最多運2個人,每次的花費為兩個人的較大花費 求所有人都過河需要的最小花費 經典的過河問題,記錄一下 先將權值從小到大排序一下 每次運兩個人顯然有兩種最優的方法 1 先運 a 1 a 2 過去,a 1 回來,再運 a n...

貪心 區間貪心

給出n個開區間 x,y 從中選擇盡可能多的開區間,使得這些開區間兩兩沒有交集。先對左端點 從大到小 排序,如果左端點相同就對右端點從小到大排序。區間不相交問題 include include using namespace std const int maxn 110 區間結構體 struct in...

python貪心法 演算法 貪心

貪心演算法也被稱為貪婪演算法,它是指在對問題求解時,總是做出在當前看來是最好的選擇。也就是說,不從整體最優上加以考慮,他所做出的是在某種意義上的區域性最優解。貪心演算法不是對所有問題都能得到整體最優解,關鍵是貪心策略的選擇,選擇的貪心策略必須具備無後效性,即某個狀態以前的過程不會影響以後的狀態,只與...