#include "bits/stdc++.h"
#define ff first
#define ss second
#define pp pop_back
#define ll long long
#define pb push_back
#define pq priority_queue
#define ls(v) (int)v.size()
#define all(v) v.begin(),v.end()
#define rall(v) v.rbegin(),v.rend()
#define mnpq(asd) asd,vector<asd>,greater<asd>
#define fe(a,b,i) for(int i = a;i<=b;++i)
#define ef(a,b,i) for(int i = a;i>=b;--i)
#define pii pair<int,int>
#define wr cout << "------------------------" << endl
using namespace std;
const int N = 505;
vector<pair<int,int>>g[N];
int dead[N];
int x[N];
int r[N];
int t[N];
int d[N];
signed main(){
ios::sync_with_stdio(false);cin.tie(nullptr);
int n,m,k;
cin >> n >> m >> k;
for(int i = 1;i<=k;++i)
cin >> x[i] >> r[i] >> t[i],g[t[i]].pb({x[i],r[i]});
for(int j = 1;j<=m + n - 1;++j){
for(int i = 1;i<=m;++i){
if(j >= i)
d[i] += 1;
for(auto [xx,rr]:g[j]){
int l = xx - rr;
int r = xx + rr;
if(l <= d[i] and d[i] <= r and d[i] <= n and d[i] >= 1){
dead[i] = 1;
}
}
}
}
int ans = 0;
for(int i = 1;i<=m;++i)
ans += dead[i];
cout << m - ans << endl;
return 0;
}