Решение задачи Незнайка с Acmp

Без пояснения   Просмотров: 63


Незнайка и его друзья собрались в космическое путешествие. Они уже и новый звездолет построили. Хоть он и построен был с учетом новых технологий, был у него один большой недостаток. После T1 часов полета, аккумуляторы требовали обязательной подзарядки от солнечной батареи в течении T2 часов, а конструкция звездолета такова, что его двигатель на время подзарядки останавливается и звездолет начинает двигаться в обратную сторону. Известно, что за T1 часов полета звездолет улетает на S1 км, а за T2 часов разрядки возвращается на S2 км.

Требуется определить: сколько потребуется времени для полета Незнайки и его друзей на различные планеты, если известно расстояние S до планет.

Код

#include <bits/stdc++.h>

using namespace std;

int main()
{
    double t1, t2, s1, s2, s, res = 0;
    cin >> t1 >> t2 >> s1 >> s2 >> s;
    if(s > s1){
        double t = s / s1;
        --t;
        res += t * t1 + t * t2;
        s-=s1 * t;
        s+=s2 * t;
    }
    while(s >= s1){
        s-=s1;
        res+=t1;
        if(s > 0){
            res+=t2;
            s+=s2;
            if(s1 <= s2){
                cout << "NO";
                return 0;

            }
        }
        else{
            cout << fixed << setprecision(2) << res;
            return 0;
        }
    }
    cout << fixed << setprecision(2) << s1/t1 * s + res;
    return 0;
}

         

Администратор Photo Автор: Администратор



Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться