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

Задача . F. Козлы и волки


Однажды Васе понадобилось как можно скорее перевезти m козлов и m волков с одного берега реки на другой. Лодка может выдержать n зверей и Васю, при этом разрешается сажать в лодку меньше n зверей. Если вдруг в каком-либо месте (на одном из двух берегов или в лодке) волков оказывается строго больше чем козлов, волки съедают козлов, а Вася расстраивается. Когда Вася плывет на лодке с одного берега на другой, он должен везти с собой хотя бы одного зверя, иначе ему станет скучно, и он, опять же, расстроится. Когда лодка приплывает к берегу, сначала все звери одновременно сходят на берег, а потом выбранные Васей звери одновременно садятся в лодку. Это означает, что в момент когда только что приплывшие звери сошли на берег, а уплывающие звери еще не забрались в лодку, кто-то может кого-то съесть. Васе нужно перевезти всех зверей с одного берега на другой так, чтобы никто никого не съел, а сам Вася не расстроился. Какое наименьшее число раз ему потребуется переплыть реку?

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

В первой строке через пробел записано два целых числа m и n (1 ≤ m, n ≤ 105) — количество зверей и вместимость лодки.

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

Если невозможно перевезти всех животных так, чтобы никто не расстроился, а все козлы остались живы, выведите -1. Иначе выведите одно целое число — сколько раз потребуется переплыть реку.

Примечание

Первый пример из условия соответствует известной детской задаче.


Примеры
Входные данныеВыходные данные
1 3 2
11
2 33 3
-1

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

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