Обмен между тремя героями
Во многих стратегических играх в ситуации, когда два героя одного игрока встречаются в одном месте, они могут обменяться между собой войсками. Начинающий программист Петя решил сделать свою игру, в которой предусматривалась бы подобная возможность обмена но уже для трех героев. При этом Петя добавил и некоторые ограничения на такой обмен.
Обмен может осуществляться в несколько ходов. На каждом ходу игрок выбирает одного из воинов армии одного героя и одного из воинов армии другого героя. Эти воины меняются местами, то есть первый попадает в армию второго героя, а второй - в армию первого. Однако если на каком-то этапе обмена один из этих воинов был в той армии, в которую его переводят, то такой ход считается недопустимым и не выполняется.
Петя хочет сделать возможность отмены любого количества последних сделанных ходов в обмене - для этого ему очевидно необходимо сохранять в памяти какую-то информацию об этих ходах. А значит потребуется выделить некоторое количество памяти. Петя знает, что его менеджер памяти не очень эффективен, поэтому он собирается вызывать его лишь один раз в начале обмена. Таким образом, необходимо заранее оценить максимальное количество ходов, которое может сделать игрок в обмене между тремя героями с известным количеством воинов.
Входные данные
В единственной строке задаются три целых числа n_1, n_2 и n_3 (0 ≤ n_i ≤ 30) - количества воинов в армиях первого, второго и третьего героев соответственно.
Выходные данные
В единственную строку выведите одно число - максимально возможное число ходов в обмене между этими героями.