#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N=1e6+10;
struct node{
int x,len;
};
vector<node> tu[N];
int n,root;
int dfs(int x,int fa,int fa_i){
if(tu[x].size()==0) return tu[fa][fa_i].len;
int ans=0;
for(int i=0;i<tu[x].size();i++){
ans+=dfs(tu[x][i].x,x,i);
}
if(x==1) return ans;
return min(ans,tu[fa][fa_i].len);
}
signed main(){
cin>>n>>root;
for(int i=1;i<n;i++){
int x,y,len;
cin>>x>>y>>len;
tu[x].push_back({y,len});
}
cout<<dfs(root,root,0);
return 0;
}