#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <cstdlib>
#include <algorithm>
#include <queue>
#define INF 0x3f3f3f3f
#define CSH(a, b) memset(a, (b), sizeof(a))
#define ll long long
using namespace std;
int f[200005],rr[200005];
int find(int x)
{
if(f[x]!=x)
{
int pre=f[x];
f[x]=find(f[x]);
rr[x]+=rr[pre];
}
return f[x];
}
int main()
{
int n,m;
while(~scanf("%d%d",&n,&m))
{
CSH(rr,0);
for(int i=0;i<=n;i++)
f[i]=i;
int ans=0;
while(m--)
{
int a,b,s,pa,pb;
scanf("%d%d%d",&a,&b,&s);
a--;
pa=find(a);
pb=find(b);
if(pa!=pb)
{
f[pa]=pb;
rr[pa]=s+rr[b]-rr[a];
}
else
{
if(rr[a]-rr[b]!=s)
ans++;
}
}
printf("%d\n",ans);
}
}