#include <bits/stdc++.h>
using namespace std;
long long n, m;
long long p[100005];
long long a[100005];
long long b[100005];
long long c[100005];
long long d[100005];
int main()
{
cin >> n >> m;
long long prev = 1;
for (long long i = 1; i <= m; i++)
{
long long x;
cin >> x;
if (prev > x)
{
p[x + 1]++;
p[prev + 1]--;
}
else
{
p[x + 1]--;
p[prev + 1]++;
}
prev = x;
}
long long s = 0;
for (long long i = 1; i <= n; i++)
{
s += p[i];
d[i] = s;
}
for (long long i = 2; i <= n; i++)
{
cin >> a[i] >> b[i] >> c[i];
}
long long ans = 0;
for (long long i = 2; i <= n; i++)
{
if (d[i] == 1)
{
ans += min(a[i], b[i] + c[i]);
}
else
{
ans += min(a[i] * d[i], b[i] * d[i] + c[i]);
}
}
cout << ans;
return 0;
}