Problem z zadaniem bukmacherka

Powrót do listy wątków

No więc mam problem z tym zadaniem. W części testów mam błędne odpowiedzi i na tym etapie nie wiem co właściwie zrobiłem źle. Myślałem o tym zadaniu jako o dwóch funkcjach liniowych co ostatecznie pozwoliło mi dojść do wzoru na można powiedzieć "zarobek". Później zauważyłem że ilość pieniędzy przeznaczonych na jeden i na drugi zakład które zawsze zostają w pewnym stosunku jednak to też nie pozwoliło mi rozwiązać zadania. Dlatego proszę o pomoc. Być może moje rozumowanie jest po prostu złe albo chodzi o to zaokrąglanie liczby aczkolwiek próbowałem robić to i setprecision jak i funkcja round razem z setprecision więc nie wiem w czym tkwi problem.

Kod źródłowy:
#include <iostream>
#include <iomanip>

using namespace std;

int main ()
{
    long double c,a1,a2,y,x1,x2;
    cin >> a1 >> a2 >> c;
    a1 *= 100;
    a2 *= 100;
    x1 = c*a2/(a1+a2);
    x2 = c*a1/(a1+a2);
    a1 /= 100;
    y = x1 * a1;
    if (y > c)
    {
        cout << setprecision(2) << fixed << "TAK "<< x1 << " " << x2 << " " << y-c;
    }
    else
    {
        cout << "NIE";
    }
}
Przemek Juszczyk, 2018-08-31 22:10:50