//51
#include<iostream>
#include<numeric>
#include<algorithm>

using namespace std;

int main(){
  for(int n;cin>>n,n;){
    int d[10][10];
    for(int i=0;i<10;i++){
      for(int j=0;j<10;j++){
	d[i][j]=(i==j)?0:1<<29;
      }
    }
    int tn=0;
    while(n--){
      int a,b,c;
      cin>>a>>b>>c;
      tn=max(tn,max(a,b));
      d[a][b]=d[b][a]=c;
    }
    for(int i=0;i<10;i++){
      for(int j=0;j<10;j++){
	for(int k=0;k<10;k++){
	  d[j][k]=min(d[j][k],d[j][i]+d[i][k]);
	}
      }
    }
    int m=1<<30;
    int t;
    for(int i=0;i<tn+1;i++){
      int s=accumulate(d[i],d[i]+tn+1,0);
      if(s<m){
	m=s;
	t=i;
      }
    }
    cout<<t<<' '<<m<<endl;
  }
  return 0;
}