fork(1) download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. long long n,arr[2000000],sum[2000000],maxx=-1,k,m,ans,cha[2000000],a[2000000],b[2000000],c[2000000];
  4. int main(){
  5. ios::sync_with_stdio(false);
  6. cin.tie(0);
  7. cout.tie(0);
  8. cin>>n>>m>>arr[0];
  9. for(int i=1;i<m;i++){
  10. cin>>arr[i];
  11. cha[min(arr[i],arr[i-1])]++;
  12. cha[max(arr[i],arr[i-1])]--;
  13. }
  14. for(int i=1;i<n;i++){
  15. sum[i]=sum[i-1]+cha[i];
  16. }
  17. for(int i=1;i<n;i++){
  18. cin>>a[i]>>b[i]>>c[i];
  19. ans+=min(sum[i]*a[i],sum[i]*b[i]+c[i]);
  20. }
  21. cout<<ans;
  22. return 0;
  23. }
Success #stdin #stdout 0.01s 13808KB
stdin
9 10
3 1 4 1 5 9 2 6 5 3
200 100 50
300 299 100
500 200 500
345 234 123
100 50 100
600 100 1
450 400 80
2 1 10
stdout
6394