t = gets.to_i t.times do a, b, c = gets.split.map &:to_i d = [[0, 2, 1], [1, 0, 2], [1, 2, 0], [2, 0, 1]].map { |r| ps = (0...3).map { |i| r.find_index { |v| v == i } } vs = (0...3).map { |i| [a, b, c][ps[i]] } next Float::INFINITY if vs[1] < 2 || vs[2] < 3 [vs[1] - (vs[2] - 1), 0].max + [vs[0] - ([vs[1], vs[2] - 1].min - 1), 0].max } .min d = -1 if d == Float::INFINITY puts d end