#include <string>
#include <iostream>

using namespace std;

const int MAXNUM = 10000000;

int main(void){
	int N, M;
	int A[1000], B[1000], C[1000];
	int dp[100][100];

	cin >> N >> M;

	for(int i=0;i<M;i++){
		cin >> A[i] >> B[i] >> C[i];
		A[i]--, B[i]--;
	}
	for(int i=0;i<N;i++){
		for(int j=0;j<N;j++){
			if(i == j){
				dp[i][j] = 0;
			}
			else{
				dp[i][j] = MAXNUM;
			}
		}
	}
	for(int i=0;i<M;i++){
		dp[A[i]][B[i]] = C[i];
		dp[B[i]][A[i]] = C[i];
	}
	for(int k=0;k<N;k++){
		for(int i=0;i<N;i++){
			for(int j=0;j<N;j++){
				dp[i][j] = min(dp[i][j], dp[i][k] + dp[k][j]);
			}
		}
	}
	int count=0;
	for(int i=0;i<M;i++){
		if(dp[A[i]][B[i]] < C[i]) count++;
	}
	cout << count << endl;
}