洛谷——P3918 [國家集訓隊]特技飛行
阿新 • • 發佈:2018-11-08
P3918 [國家集訓隊]特技飛行
神犇航空開展了一項載客特技飛行業務。每次飛行長N個單位時間,每個單位時間可以進行一項特技動作,可選的動作有K種,每種動作有一個刺激程度Ci。如果連續進行相同的動作,乘客會感到厭倦,所以定義某次動作的價值為(距上次該動作的時間)*Ci,若為第一次進行該動作,價值為0。安排一種方案,使得總價值最大。
貪心
動作的價值為距上次動作的時間*$c_i$
一個動作無論進行多少次,他的代價都是(最後的時間-初始時間)*$c_i$
#include<bits/stdc++.h> #defineN 1005 using namespace std; int n,k,c[N],ans; int main() { scanf("%d%d",&n,&k); for(int i=1;i<=k;i++) scanf("%d",&c[i]); int l=1,r=n; sort(c+1,c+1+k); for(int i=k;l<=r&&i>=1;i--){ ans+=c[i]*(r-l); r--,l++; } printf("%d\n",ans); return 0; }