ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила
вернуться в форум

Обсуждение задачи 1113. Джип

Where is mistake?
Послано Drema [KhAI] Tihov Ilya 11 июн 2009 14:20
#include <iostream>
#include <stdlib.h>
using namespace std;

int main()
{
    int m, n, f;
    double out;
    div_t o;
    double way[32005] = {0};
    long long int oil[32005] = {0};

    cin >> n >> m;
    way[1] = m;
    oil[1] = m;

    for(f = 1; way[f - 1] + m / (2 * f - 1) < n; f++)
    {
        way[f] = way[f - 1] + m / (2 * f - 1);
        oil[f] = f * m;
    }

    out = (n - way[f - 1]) * (2 * f - 1) + oil[f - 1];
    o = div(out, 1);

    if(abs(out - o.quot) < 1e-8)
        cout << o.quot;
    else
        cout << o.quot + 1;

}