#include<iostream>

using namespace std;
const int INF = 1000000;

int main()
{
  int edge[10][10];
  int n;
  for(;cin>>n,n;)
    {
      for(int i=0;i<10;i++)
	for(int j=0;j<10;j++)
	  {
	    if(i!=j)
	      edge[i][j]=INF;
	    else
	      edge[i][j]=0;
	  }
      int max_num=0;
      for(int i=0;i<n;i++)
	{
	  int a,b,c;
	  cin>>a>>b>>c;
	  edge[a][b]=c;
	  edge[b][a]=c;
	  max_num=max(max_num,max(a,b));
	}
      for(int k=0;k<=max_num;k++)
	for(int i=0;i<=max_num;i++)
	  for(int j=0;j<=max_num;j++)
	    {
	      edge[i][j]=min(edge[i][j],edge[i][k]+edge[k][j]);
	    }
      int ans=0,sum=INF*10;
      for(int i=0;i<=max_num;i++)
	{
	  int tmp=0;
	  for(int j=0;j<=max_num;j++)
	    {
	      tmp+=edge[i][j];
	    }
	  if(tmp<sum)
	    {
	      ans=i;
	      sum=tmp;
	    }
	}
      cout<<ans<<" "<<sum<<endl;
    }
}