Велосипед
Велосипедист собирается проехать из пункта A в пункт B, расстояние между которыми составляет l м. У него есть велосипед, который может развивать скорость v м/c. Однако перед тем как выехать, велосипедист может выполнить некоторые модернизации своего велосипеда. Для каждой модернизации известно на сколько она увеличивает скорость велосипеда, а также время, за которое она может быть сделана. Можно выполнить несколько различных модернизаций, однако каждая модернизация может быть выполнена не более одного раза. Помогите велосипедисту добраться до пункта B как можно быстрее.
Specifications
Входные данные
Напишите программу, которая считывает три целых числа: расстояние между пунктами l, исходная скорость велосипеда v и количество различных модернизаций N. Далее идут N пар целых чисел, каждая из которых определяет соответствующую модернизацию: прирост скорости после модернизации vi и время ti, затрачиваемое на эту модернизацию. Все величины заданы в системе СИ (метры и секунды).
0 ≤ l ≤ 109, 1 ≤ v ≤ 106, 0 ≤ N ≤ 100, 0 ≤ vi ≤ 1000, 0 ≤ ti ≤ 1000.
Выходные данные
Необходимо вывести с шестью десятичными знаками минимальное время, которое потребуется велосипедисту для того, чтобы доехать из пункта A в пункта B с учетом времени на модернизации.
Problem information
Time Limit: 1 secondsMemory Limit: 64 MB
Balls for the passed test: 3.57143
Complexity: 50% 6/12
Autor: Неспирный Виталий
Source: Турнир Чемпионов, Винница 2010
Example
Example inputSample 1 100 5 1 3 10 Sample 2 100 5 2 5 3 5 3 |
Example outputSample 1 20.000000 Sample 2 12.666667 |
| ← House | Problems | Сопротивление → |
