#include<bits/stdc++.h>
using namespace std;
int fir[100005],ne[200005],to[200005],w[200005],np=0;
void add(int x,int y,int z){
ne[++np]=fir[x];
fir[x]=np;
to[np]=y;
w[np]=z;
}
int dfs(int u,int f){
int ans=0;
for(int i=fir[u];i;i=ne[i]){
int v=to[i];
if(v==f)continue;
int tmp=dfs(v,u)+w[i];
ans=max(ans,tmp);
}
return ans;
}
int main(){
int n,s;
scanf("%d%d",&n,&s);
int sum=0;
for(int i=1,x,y,z;i<=100;i++){
scanf("%d%d%d",&x,&y,&z);
if(x==EOF||y==EOF||z==EOF)break;
add(x,y,z);
add(y,x,z);
sum+=z;
}
printf("%d",sum*2-dfs(s,0));
return 0;
}
这个到底错在哪里了呜呜呜