#include <iostream>
#include <cstring>
using namespace std;
int d[10][10];
int V;
void wf()
{
	for(int k=0;k<=V;k++)
		for(int i=0;i<=V;i++)
			for(int j=0;j<=V;j++)
				d[i][j]=min(d[i][j],d[i][k]+d[k][j]);
}
int main()
{
	int n;
	cin>>n;
	while(n){
		int ans=0x3f3f3f3f;
		V=0;
		memset(d,0x3f,sizeof(d));
		for(int i=0;i<n;i++){
			int u,v,cost;
			cin>>u>>v>>cost;
			d[u][v]=cost;
			d[v][u]=cost;
			V=max(V,u);
			V=max(V,v);
		}
		for(int i=0;i<=V;i++){
			d[i][i]=0;
		}
		wf();
		int ff=-1;
		for(int i=0;i<=V;i++){
			int temp=0;
			for(int j=0;j<=V;j++){
				temp+=d[i][j];
			}
			ans=min(temp,ans);
			if(ans==temp)
				ff=i;
		}
		cout<<ff<<" "<<ans<<endl;
		cin>>n;
	}
	return 0;
}
