1. 程式人生 > >洛谷——P3918 [國家集訓隊]特技飛行

洛谷——P3918 [國家集訓隊]特技飛行

 

P3918 [國家集訓隊]特技飛行

 

神犇航空開展了一項載客特技飛行業務。每次飛行長N個單位時間,每個單位時間可以進行一項特技動作,可選的動作有K種,每種動作有一個刺激程度Ci。如果連續進行相同的動作,乘客會感到厭倦,所以定義某次動作的價值為(距上次該動作的時間)*Ci,若為第一次進行該動作,價值為0。安排一種方案,使得總價值最大。

 

貪心

動作的價值為距上次動作的時間*$c_i$

一個動作無論進行多少次,他的代價都是(最後的時間-初始時間)*$c_i$

 

#include<bits/stdc++.h>

#define
N 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; }