Time

13:08:20
23 May 2012
Version for print

Велосипед

   Велосипедист собирается проехать из пункта A в пункт B, расстояние между которыми составляет l м. У него есть велосипед, который может развивать скорость v м/c. Однако перед тем как выехать, велосипедист может выполнить некоторые модернизации своего велосипеда. Для каждой модернизации известно на сколько она увеличивает скорость велосипеда, а также время, за которое она может быть сделана. Можно выполнить несколько различных модернизаций, однако каждая модернизация может быть выполнена не более одного раза. Помогите велосипедисту добраться до пункта B как можно быстрее.


Specifications

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

   Напишите программу, которая считывает три целых числа: расстояние между пунктами l, исходная скорость велосипеда v и количество различных модернизаций N. Далее идут N пар целых чисел, каждая из которых определяет соответствующую модернизацию: прирост скорости после модернизации vi  и время ti, затрачиваемое на эту модернизацию. Все величины заданы в системе СИ (метры и секунды).

   0l 109, 1v 106, 0N 100, 0vi 1000, 0ti 1000.

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

   Необходимо вывести с шестью десятичными знаками минимальное время, которое потребуется велосипедисту для того, чтобы доехать из пункта A в пункта B с учетом времени на модернизации.


Problem information

Time Limit: 1 seconds
Memory Limit: 64 MB
Balls for the passed test: 3.57143
Complexity: 50% 6/12
Autor: Неспирный Виталий
Source: Турнир Чемпионов, Винница 2010

Example

Example input

Sample 1
100 5 1 3 10

Sample 2
100 5 2 5 3 5 3

Example output

Sample 1
20.000000

Sample 2
12.666667


← House Problems Сопротивление →