bzoj2697
好水好水的貪心。。。
容易發現每種特技只表演兩次,多表演沒有意義,而且差距越長收益越大
然後就可以貪,最大的放兩端,次大的往裡,然後是第三大.......
證明很簡單,假設將兩個特技時間交換,那麼會產生交換距離乘以\(c\)的差值的貢獻,顯然就不優
#include#include#include#include#include#include#define redge(u) for (int k = h[u],to; k; k = ed[k].nxt)
#define rep(i,n) for (int i = 1; i <= (n); i++)
#define mp(a,b) make_pair(a,b)
#define cls(s) memset(s,0,sizeof(s))
#define cp pair#define ll long long int
using namespace std;
const int maxn = 1005,maxm = 100005,inf = 1000000000;
inline int read()
while (c >= 48 && c <= 57)
return out * flag;
}int n,k,c[maxn];
int main()
printf("%lld\n",ans);
return 0;
}
bzoj2697 特技飛行 貪心
神犇航空開展了一項載客特技飛行業務。每次飛行長n個單位時間,每個單位時間可以進行一項特技動作,可選的動作有k種,每種動作有乙個刺激程度ci。如果連續進行相同的動作,乘客會感到厭倦,所以定義某次動作的價值為 距上次該動作的時間 ci,若為第一次進行該動作,價值為0。安排一種方案,使得總價值最大。第一行...
bzoj 2697 特技飛行 貪心
description 神犇航空開展了一項載客特技飛行業務。每次飛行長n個單位時間,每個單位時間可以進行一項特技動作,可選的動作有k種,每種動作有乙個刺激程度ci。如果連續進行相同的動作,乘客會感到厭倦,所以定義某次動作的價值為 距上次該動作的時間 ci,若為第一次進行該動作,價值為0。安排一種方案...
BZOJ 2697 特技飛行(貪心)
題意 神犇航空開展了一項載客特技飛行業務。每次飛行長n個單位時間,每個單位時間可以進行一項特技動作,可選的動作有k種,每種動作有乙個刺激程度ci。如果連續進行相同的動作,乘客會感到厭倦,所以定義某次動作的價值為 距上次該動作的時間 ci,若為第一次進行該動作,價值為0。安排一種方案,使得總價值最大。...