#include<iostream>
#include<fstream>
#include<sstream>
#include<vector>
#include<algorithm>
#include<string>
#include<cstring>
#include<cmath>
#include<iomanip>
#include<set>
#include<map>
#include<queue>
#include<stack>
#include<list>
#include<utility>
#include<climits>

#define INF INT_MAX/2
#define EPS 1.0e-7

#define MAX_N 5005

using namespace std;

typedef long long ll;
typedef pair<int,int> PII;

int N,M;

vector<int> cnt[MAX_N];

int main(){

    cin.sync_with_stdio(false);

    cin >> N >> M;

    for(int i=0;i<N+2;++i)
        cnt[i].resize(i+3);

    for(int i=0;i<M;++i){

        int x,y,l;
        cin >> x >> y >> l;

        --x;
        --y;
        ++l;

        cnt[x][y]         += 1;
        cnt[x+l+1][y+1]   += 1;
        cnt[x+l][y+l+1]   += 1;

        cnt[x][y+1]       -= 1;
        cnt[x+l][y]       -= 1;
        cnt[x+l+1][y+l+1] -= 1;

    }

    for(int i=0;i<N;++i)
        for(int j=1;j<=i;++j)
            cnt[i][j] += cnt[i][j-1];

    for(int i=0;i<N;++i)
        for(int j=1;i+j<N;++j)
            cnt[i+j][i] += cnt[i+j-1][i];

    for(int i=0;i<N;++i)
        for(int j=1;i+j<N;++j)
            cnt[i+j][j] += cnt[i+j-1][j-1];

    int ans = 0;

    for(int i=0;i<N;++i)
        for(int j=0;j<=i;++j)
            if(cnt[i][j]) 
                ++ans;

    cout << ans << endl;

    return 0;

}