var line, data = [], i = -1, s, e, arr = [], arr2 = [];
while(line = read_line()){
      line = line.split(' ');
      if(i == -1){
            s = parseInt(line[0]);
            e = parseInt(line[1]);
      }
      else{
            data[i] = [parseInt(line[0]), parseInt(line[1]), parseInt(line[2])];
      }
      i++;
}
function findNext(start, con, his){
      if(start == e){
            arr.push(con);
            arr2.push(his + '->1050');
            return con;
      }
      for(var n = 0, max = data.length; n < max; n++){
            if(data[n][0] == start){
                  findNext(data[n][1], con + data[n][2], his + '->' + data[n][0]);
            }
      }
}
for(var n = 0, max = data.length; n < max; n++){
      if(data[n][0] == s){
            findNext(data[n][1], data[n][2], '1000');
      }
}
var min = arr[0], pos;
for(var n = 1; n < arr.length; n++){
      if(arr[n] < min){
            min = arr[n];
            pos = n;
      }
}
var str = arr2[pos] + '(' + min + ')';
print(str);