#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll n,m,x[1000005],a[1000005],money;
struct sea_subway{
ll t,b,c;
}s[1000005];
signed main(){
cin>>n>>m;
for(int i=1;i<=m;i++)
cin>>x[i];
for(int i=2;i<=m;i++)
{
if(x[i]>x[i-1])a[x[i-1]]++,a[x[i]]--;
else a[x[i-1]]--,a[x[i]]++;
}
for(int i=2;i<=m;i++)
a[i]+=a[i-1];
for(int i=1;i<n;i++)
{
cin>>s[i].t>>s[i].b>>s[i].c;
if(s[i].c+s[i].b*a[i]<=s[i].t*a[i])money+=s[i].c+s[i].b*a[i];
else money+=s[i].t*a[i];
}
cout<<money;
return 0;
}
请大佬来帮忙看看!