Олимпиадный тренинг

Задача . A. Утренний сэндвич


Монокарп начинает каждое утро со вкусного сэндвича. Его ингредиенты — это всегда хлеб, сыр и ветчина.

Сэндвич всегда готовится по следующему принципу:

  • кусок хлеба
  • ломтик сыра или ветчины
  • кусок хлеба
  • \(\dots\)
  • ломтик сыра или ветчины
  • кусок хлеба

То есть в сэндвиче всегда хлеб сверху и снизу, и при этом хлеб и начинка чередуются (начинка — это либо сыр, либо ветчина). Каждый кусок хлеба и каждый ломтик сыра или ветчины называется слоем.

Сегодня Монокарп проснулся и обнаружил, что у него есть \(b\) кусков хлеба, \(c\) ломтиков сыра и \(h\) ломтиков ветчины. Какое наибольшее количество слоев может быть в его утреннем сэндвиче?

Входные данные

В первой строке записано одно целое число \(t\) (\(1 \le t \le 1000\)) — количество наборов входных данных.

Каждый набор состоит из трех целых чисел \(b, c\) и \(h\) (\(2 \le b \le 100\); \(1 \le c, h \le 100\)) — количество кусков хлеба, ломтиков сыра и ломтиков ветчины, соответственно.

Выходные данные

На каждый набор входных данных выведите одно целое число — наибольшее количество слоев, которое может быть в его утреннем сэндвиче.

Примечание

В первом наборе входных данных Монокарп может собрать сэндвич из трех слоев: либо кусок хлеба, ломтик сыра и другой кусок хлеба, либо кусок хлеба, ломтик ветчины и другой кусок хлеба.

Во втором наборе у Монокарпа есть много хлеба, но не очень много начинки. Он может собрать сэндвич из четырех кусков хлеба, одного ломтика сыра и двух ломтиков ветчины.

В третьем наборе все наоборот — у Монокарпа есть много начинки, но не очень много хлеба. Он может собрать сэндвич из трех кусков хлеба и двух ломтиков сыра, например.


Примеры
Входные данныеВыходные данные
1 3
2 1 1
10 1 2
3 7 8
3
7
5

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w643
Комментарий учителя