11945. Подорож
У двовимірній площині є \(N\) міст і \(M\) скринь. Місто \(i\) знаходиться в координатах (\(X_i,Y_i\)), а скриня \(i\) знаходиться в координатах (\(P_i,Q_i\)).
Степан вирушить у подорож, яка почнеться з початкової точки, відвідає всі \(N\) міст, а потім повернеться до початкової точки. Відвідувати скрині не обов’язково, але кожна скриня містить прискорювач. Щоразу, коли він бере прискорювач, швидкість його руху збільшується в 2 рази. Початкова швидкість руху Степана дорівнює 1.
Знайдіть найкоротший час, необхідний для завершення подорожі.
Обмеження
- \(1 \leq N \leq 12\)
- \(0 \leq M \leq 5\)
- \(-10^9 \leq X_i,Y_i,P_i,Q_i \leq 10^9\)
- (0,0), (\(X_i,Y_i\)), і (\(P_i,Q_i\)) відрізняються.
- Усі значення у вхідних даних є цілими числами.
Формат вхідних даних
Перший рядок містить цілі числа \(N,M\)
Наступні \(N\) рядків містять цілі числа \(X_i, Y_i\)
Далі \(M\) рядків містять цілі числа \(P_i, Q_i\)
Числа у рядках розділяються пропуском.
Формат вихідних даних
У вихідний потік виведіть відповідь. Ваш результат вважатиметься правильним, якщо абсолютна чи відносна помилка становитиме не більше \(10^{-6}\).
Приклад вхідних даних
2 1
1 1
0 1
1 0
Приклад вихідних даних
2.5000000000
Ось один з оптимальних способів завершити подорож.
- Пройдіть відстань 1 від початку до скрині 1 зі швидкістю 1, час 1.
- Пройдіть відстань 1 від скрині 1 до міста 1 зі швидкістю 2, час 0,5.
- Пройдіть відстань 1 від міста 1 до міста 2 зі швидкістю 2, час 0,5.
- Пройдіть відстань 1 від міста 2 до початкової точки зі швидкістю 2, час 0,5.
Приклад вхідних даних
2 1
1 1
0 1
100 0
Приклад вихідних даних
3.4142135624
Ось один з оптимальних способів завершити подорож.
- Пройдіть відстань 1.41… від початку до міста 1 зі швидкістю 1, час 1.41….
- Пройдіть відстань 1 від міста 1 до міста 2 зі швидкістю 1, час 1.
- Пройдіть відстань 1 від міста 2 до початкової точки зі швидкістю 1, час 1.
Приклад вхідних даних
1 2
4 4
1 0
0 1
Приклад вихідних даних
4.3713203436
Коментарі