#include <bits/stdc++.h>
using namespace std;
#define F first
#define S second
#define pb push_back
#define all(a) a.begin(), a.end()
typedef long long ll;
typedef pair<int, int> ii;
const int N = 100000 + 5;
vector<ii> g[N];
int n, s;
long long maxPath = 0;
long long sumPath = 0;
void dfs(int u, int p, long long sum)
{
maxPath = max(maxPath, sum);
for(ii &x : g[u])
if(x.F != p) dfs(x.F, u, sum + x.S);
}
void solve()
{
cin >> n >> s;
for(int i = 1; i < n; i++)
{
int u, v, w;
cin >> u >> v >> w;
g[u].pb({v, w});
g[v].pb({u, w});
sumPath += w;
}
dfs(s, 0, 0);
cout << sumPath * 2 - maxPath;
}
signed main()
{
cin.tie(0)->sync_with_stdio(0);
int t = 1;
// cin >> t;
while(t--) solve();
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKI2RlZmluZSBGIGZpcnN0CiNkZWZpbmUgUyBzZWNvbmQKI2RlZmluZSBwYiBwdXNoX2JhY2sKI2RlZmluZSBhbGwoYSkgYS5iZWdpbigpLCBhLmVuZCgpCiAKdHlwZWRlZiBsb25nIGxvbmcgbGw7CnR5cGVkZWYgcGFpcjxpbnQsIGludD4gaWk7CiAKY29uc3QgaW50IE4gPSAxMDAwMDAgKyA1OwoKdmVjdG9yPGlpPiBnW05dOwppbnQgbiwgczsKbG9uZyBsb25nIG1heFBhdGggPSAwOwpsb25nIGxvbmcgc3VtUGF0aCA9IDA7Cgp2b2lkIGRmcyhpbnQgdSwgaW50IHAsIGxvbmcgbG9uZyBzdW0pCnsKICAgIG1heFBhdGggPSBtYXgobWF4UGF0aCwgc3VtKTsKICAgIGZvcihpaSAmeCA6IGdbdV0pIAogICAgICAgIGlmKHguRiAhPSBwKSBkZnMoeC5GLCB1LCBzdW0gKyB4LlMpOwp9Cgp2b2lkIHNvbHZlKCkKewogICAgY2luID4+IG4gPj4gczsKICAgIGZvcihpbnQgaSA9IDE7IGkgPCBuOyBpKyspCiAgICB7CiAgICAgICAgaW50IHUsIHYsIHc7CiAgICAgICAgY2luID4+IHUgPj4gdiA+PiB3OwogICAgICAgIGdbdV0ucGIoe3YsIHd9KTsKICAgICAgICBnW3ZdLnBiKHt1LCB3fSk7CiAgICAgICAgc3VtUGF0aCArPSB3OwogICAgfQogICAgZGZzKHMsIDAsIDApOwogICAgY291dCA8PCBzdW1QYXRoICogMiAtIG1heFBhdGg7Cn0KIApzaWduZWQgbWFpbigpCnsKICAgIGNpbi50aWUoMCktPnN5bmNfd2l0aF9zdGRpbygwKTsKICAgIGludCB0ID0gMTsKICAgIC8vIGNpbiA+PiB0OwogICAgd2hpbGUodC0tKSBzb2x2ZSgpOwogICAgcmV0dXJuIDA7Cn0=