eolymp
bolt
Try our new interface for solving problems
Məsələlər

Складывание

Складывание

Как вы помните, Алексей увлекается оригами. Он перешел с квадратов на прямоугольники, а с прямоугольниками справиться намного сложнее. Его главный интерес состоит в том, чтобы определить минимально возможное количество изгибов, необходимое для преобразования прямоугольника W * H в w * h. Результат каждого изгиба также должен быть прямоугольником, поэтому разрешается делать только складки, параллельные сторонам прямоугольника. Помогите Алексу и напишите программу, которая определит минимально необходимое количество складок.

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

Первая строка содержит два целых числа W и H - исходные размеры прямоугольника. Вторая строка содержит еще два целых числа w и h - размеры целевого прямоугольника (1W, H, w, h109).

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

Выведите одно целое число - минимальное количество складок, необходимое для преобразования исходного прямоугольника в целевой.

Если требуемое преобразование невозможно, выведите -1.

Пояснение

В первом примере следует свернуть прямоугольник 2 * 7 в 2 * 4, а затем в 2 * 2.

Во втором примере следует сложить прямоугольник 10 * 6 в 10 * 4, затем в 8 * 4 и повернуть его так, чтобы получить 4 * 8.

В третьем примере невозможно сложить прямоугольник 5 * 5 в 1 * 6 (помните, что складки должны быть параллельны сторонам прямоугольника).

Zaman məhdudiyyəti 1 saniyə
Yaddaşı istafadə məhdudiyyəti 128 MiB
Giriş verilənləri #1
2 7
2 2
Çıxış verilənləri #1
2
Giriş verilənləri #2
10 6
4 8
Çıxış verilənləri #2
2
Giriş verilənləri #3
5 5
1 6
Çıxış verilənləri #3
-1
Mənbə 2016 ACM NEERC, Северный регион, Октябрь 22, Задача F