1995: 聚会

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Normal Judger Creator:
Submit:40 Solved:5

Description

【问题描述】

小S想要从某地出发去同学的家中参加一个party,但要有去有回。他想让所用的时间尽量的短。

但他又想知道从不同的点出发,来回的最短时间中最长的时间是多少,这个任务就交给了你。

【输入格式】

第一行三个正整数n,m,k(n是节点个数,m是有向边的条数,k是参加聚会的地点编号)( 1 ≤ n ≤ 1000 ,1 ≤ m ≤ 100,000)

第二行..m+1行每行3个整数x,y,w 代表从x到y需要花w的时间(1 ≤ w≤ 100)

【输出格式】

输出从不同的节点出发的最短时间中最长的时间。

【输入样例】

4 8 2
1 2 4
1 3 2
1 4 7
2 1 1
2 3 5
3 1 2
3 4 4
4 2 3

【输出样例】

10


Input

第一行三个正整数n,m,k(n是节点个数,m是有向边的条数,k是参加聚会的地点编号)( 1 ≤ n ≤ 1000 ,1 ≤ m ≤ 100,000)

第二行..m+1行每行3个整数x,y,w 代表从x到y需要花w的时间(1 ≤ w≤ 100)

Output

输出从不同的节点出发的最短时间中最长的时间。

Sample Input Copy

4 8 2
1 2 4
1 3 2
1 4 7
2 1 1
2 3 5
3 1 2
3 4 4
4 2 3

Sample Output Copy

10

HINT

有重边