import java.util.Comparator; import java.util.PriorityQueue; import java.util.Queue; import java.util.Scanner; public class Main { static class Node{ int w; int exist; public Node() { this.w=0;this.exist=0; } public Node(int w,int exist) { this.w=w; this.exist=exist; } } static class R{ int vertax; int dis; public R(int vertax) { this.vertax=vertax; this.dis=Integer.MAX_VALUE; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; R other = (R) obj; if (vertax != other.vertax) return false; return true; } } static Comparator<R> cmp=new Comparator<R>() { @Override public int compare(R o1, R o2) { if(o1.dis-o2.dis<0) { return -1; }else if(o1.dis-o2.dis==0) { return 0; }else { return 1; } } }; static Scanner scn=new Scanner(System.in); static int n,m,start; static int Max=Integer.MAX_VALUE,ans; static Node[][] G; static boolean[] visit; static Queue<R> pri; static R[] form; public static void main(String[] args) { while(scn.hasNext()) { n=scn.nextInt();m=n*(n-1)/2;start=1; n+=1; if(m==0) break; G=new Node[n][n]; visit=new boolean[n]; pri=new PriorityQueue<>(cmp); form=new R[n]; ans=0; for(int i=0;i<n;i++) { form[i]=new R(i); for(int j=0;j<n;j++) { G[i][j]=new Node(); } } for(int i=0;i<m;i++) { int v=scn.nextInt(),v2=scn.nextInt(),w=scn.nextInt(),cunzai=scn.nextInt(); G[v][v2]=G[v2][v]=new Node(w, cunzai); } prim(start); System.out.printf("%d\n",ans); } } static void prim(int start) { form[start].dis=0; pri.offer(form[start]); while(!pri.isEmpty()) { int u=pri.poll().vertax; visit[u]=true; ans+=form[u].dis; for(int i=1;i<n;i++) { int v=i; int w=G[u][v].w,cunzai=G[u][v].exist; if(!visit[v] && cunzai==1) { form[v].dis=0; while(pri.remove(form[v])); pri.offer(form[v]); }else if(G[u][v].w!=0 && !visit[v] && w<form[v].dis ) { form[v].dis=w; while(pri.remove(form[v])); pri.offer(form[v]); } } } } } /************************************************************** Problem: 2205 User: admin Language: Java Result: Accepted Time:1091 ms Memory:62244 kb ****************************************************************/