1 solutions
-
0
相邻两天,后一天的价格大于前一天的价格,则交易一次。且按照此规则进行交易不会影响最后的答案。因此对每一天进行同样的贪心操作即可。
#include<bits/stdc++.h> using namespace std; const int N = 1e6+11; int n, a[N]; long long sum, money; int main(){ cin>>n; for(int i=0;i<n;i++) scanf("%d",&a[i]); for(int i=0;i<n;i++){ if(money)if(money < a[i]){ sum += a[i] - money; money = 0; } if(a[i] < a[i+1]) money = a[i]; } printf("%lld\n",sum); }
- 1
Information
- ID
- 501
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 9
- Tags
- (None)
- # Submissions
- 63
- Accepted
- 4
- Uploaded By