#include<bits/stdc++.h>
using namespace std;
struct yff
{
	int v,w,next;
}zyj[288888];
int ji,f[288888],dis[288888];
inline int read(){   
    int k=1,w=1,s=0;char ch=getchar();
	while(ch<'0' || ch>'9'){if(ch=='-')w=-1;
		ch=getchar();}
	while(ch>='0' && ch<='9'){s=s*10+ch-48;ch=getchar();}
	return k=w*s;
}
inline void add(int u,int v,int w)
{
	zyj[++ji].v=v;
	zyj[ji].w=w;
	zyj[ji].next=f[u];
	f[u]=ji;
}
int dfs(int x,int fa)
{
	for(int i=f[x];i>0;i=zyj[i].next)
	{
		int to=zyj[i].v;
		if(to==fa) continue;
		dfs(to,x);
		dis[x]=max(dis[x],dis[to]+zyj[i].w);
	}
}
int main()
{
	int n,sum=0;
    scanf("%d",&n);
    for(int i=1;i<n;i++){
        int a,b,c;
        scanf("%d %d %d",&a,&b,&c);
        sum+=c;
        add(a,b,c);
        add(b,a,c);
    }
    dfs(1,-1);
    printf("%d\n",sum*2-dis[1]);
	return 0;
}