eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Смешивание жидкостей

Смешивание жидкостей

На заседании общества "Меча и орала" чисто в конспиративных целях гоняют чаи и еще много чего. В горячий чай добавляют холодное молоко. При этом, естественно, каждый хочет, чтобы его смесь достигла необходимой температуры как можно быстрее. Изменение температуры смеси происходит по экспоненциальному закону: \includegraphics{https://static.e-olymp.com/content/65/656a7a6789c20f278a74d48b372c3356d1f0f14a.jpg} , где \textbf{T(t)} ― температура в момент времени \textbf{t}, \textbf{T_1} ― температура смеси в начальный момент времени, \textbf{T_0} ― температура окружающей среды, \textbf{k} ― некоторый постоянный коэффициент. При смешении двух жидкостей с массами \textbf{m_1} и \textbf{m_2} и температурами \textbf{T_1} и \textbf{T_2} получается смесь с температурой \includegraphics{https://static.e-olymp.com/content/90/9085fc82da9209f632ee4c6f0490eae361c7ee40.jpg} Считаем, что удельные теплоемкости всех жидкостей на этом чаепитии одинаковые. Температура первой жидкости сразу в начальный момент времени начинает изменяться по приведенному выше экспоненциальному закону, в любой момент времени мы можем ее мгновенно смешать со второй жидкостью ― ее температура все это время постоянна и равна \textbf{T_2}, после чего температура полученной смеси изменяется по тому же закону с тем же коэффициентом \textbf{k} и новой температурой \textbf{T_1^\{′\}}. Нам же необходимо посчитать минимальное время, за которое приготавливаемая смесь может достичь необходимой температуры. \InputFile В первой строке входного файла записано одно целое число \textbf{N} ― количество тестов. Далее следуют \textbf{N} строк, в каждой из которых по семь целых чисел \textbf{T_0}, \textbf{T_1}, \textbf{T_2}, \textbf{m_1}, \textbf{m_2}, \textbf{T_opt}, \textbf{k}. Соответственно, \textbf{T_0}, \textbf{T_1}, \textbf{T_2}, \textbf{T_opt} --- температуры окружающей среды, первой и второй жидкостей и температура, которую нам необходимо получить (\textbf{--273} < \textbf{T_0}, \textbf{T_1},\textbf{T_2}, \textbf{T_opt} ≤ \textbf{1000}), \textbf{m_1} и \textbf{m_2} --- массы первой и второй жидкостей (\textbf{0} ≤ \textbf{m_1}, \textbf{m_2} ≤ \textbf{1000}, \textbf{m_1+m_2} > \textbf{0}), \textbf{k} --- коэффициент, отвечающий за скорость изменения температуры (\textbf{1} ≤ \textbf{k} ≤ \textbf{1000}). \OutputFile В каждую из \textbf{N} строк в соответствии с последовательностью данных во входном файле вывести по одному вещественному числу ― минимальное время, за которое мы можем получить смесь требуемой температуры, посчитанное с относительной или абсолютной погрешностью не более \textbf{10^\{−8\}} или сообщение \textbf{Impossible}, если достичь требуемой температуры никогда не удастся.
Лимит времени 1 секунда
Лимит использования памяти 64 MiB
Входные данные #1
2
0 1 1 10 10 1 1
0 1 1 10 10 0 1
Выходные данные #1
0
Impossible
Источник Очный тур XIII Открытой Всесибирской олимпиады по программированию имени И.В. Поттосина