#include<cstdio>
#include<iostream>
#include<algorithm>
//#include<queue>
//#include<vector>
//#include<bits/stdc++.h>
#define ll long long
#define ddd printf("-----------------------\n");
using namespace std;
const int maxn=5e5+10 ;
int head[maxn],to[maxn<<1],nxt[maxn<<1],w[maxn<<1],tot;
int n,s,dis[maxn];
ll ans;
void add(int u,int v,int val){
to[++tot]=v,nxt[tot]=head[u],head[u]=tot,w[tot]=val;
}
void dfs(int u,int fa)
{
for(int i=head[u];i;i=nxt[i])
{
int v=to[i];if(v==fa) continue;
dfs(v,u);
dis[u]=max(dis[u],dis[v]+w[i]);
}
for(int i=head[u];i;i=nxt[i])
{
int v=to[i];if(v==fa) continue;
ans+=dis[u]-dis[v]-w[i];
}
}
int main()
{
ios::sync_with_stdio(false);
cin>>n>>s;
for(int i=1;i<=n-1;i++){
int u,v,val;cin>>u>>v>>val;
add(u,v,val),add(v,u,val);
}
dfs(s,0);
cout<<ans<<'\n';
return 0;
}