 #include<iostream>
 #include<stdio.h>
 #include<string>
 #include<math.h>
 #include<iomanip>
 #include<algorithm>
 #include<string.h>
 #include<cctype>
 #include<map>
 #include<set>
 #include<vector>
 #include<sstream>
 #include<stack>
 #include<queue>
 #include<deque>
 #include<functional>
 #include<utility>
 
 using namespace std;
 
 const int MAX_V=500+5;
 const int INF=1000000000;
 
 int graph[MAX_V][MAX_V];
 int mincost[MAX_V];
 bool used[MAX_V];
 int V,m;
 
 int prim()
 {
   for(int i=0;i<V;i++)
   {
     mincost[i]=INF;
     used[i]=false;        
   }    
   mincost[0]=0;
   int res=0;
   while(true)
   {
     int v=-1;
     for(int u=0;u<V;u++)
     {
       if(!used[u]&&(v==-1||mincost[u]<mincost[v])) v=u;        
     }           
     if(v==-1) break;
     used[v]=true;
     res+=mincost[v];
     for(int u=0;u<V;u++)
     {
       mincost[u]=min(mincost[u],graph[u][v]);        
     }
   }
   return res;
 }
 
 int main()
 {
   while(cin>>V&&V&&cin>>m)
   {
     int p,q,d;
     char temp1,temp2;
     for(int i=0;i<V;i++)
     {
       for(int j=0;j<V;j++)
       {
         graph[i][j]=INF;        
       }        
     }
     while(m--)
     {
       cin>>p>>temp1>>q>>temp2>>d;
       graph[p][q]=(d/100-1);
       graph[q][p]=(d/100-1);          
     }                    
     int result=prim();
     cout<<result<<endl;        
   }
   //while(1);
   return 0;
 }

 
  