... czy jest tam?
Wyzwanie polega na przeanalizowaniu rachunku za lunch, który zawiera cenę podstawową, porady, rabaty, kupony i dodatki oraz sprawdzenie, czy mój lunch wynosił 0 USD lub mniej . Jeśli to jest dane wejściowe:
12.34
15 tip
25 discount
1.5 extra
2 coupon
Wtedy wyjście może być false. Oto jak to działa:
12.34 to cena bazowa.
15 tipoznacza dodanie 15% do całości.
25 discountoznacza odjęcie 25% od całości.
1.5 extraoznacza dodanie 1,5 do całości.
2 couponoznacza odjęcie 2 od sumy.
Może być dowolna liczba porad, rabatów, kuponów i dodatków, ale zawsze będzie jedna cena bazowa.
Następnie robimy (12.34 * 1.15) * 0.75 + 1.5 - 2dla wyniku 10.14. 10.14 jest większe niż 0, więc wyprowadzamy false. Mój lunch nie był darmowy.
Zasady
liczba tip oznacza dodanie liczby procentowej do sumy.
liczba discount oznacza odjęcie procentu liczbowego od sumy
liczba extra oznacza dodanie liczby do sumy
liczba coupon oznacza odjęcie liczby od sumy
Inny przykład:
10
20 tip
20 discount
2 coupon
2 coupon
1 coupon
50 discount
2.55 coupon
Cena wynosi -0.24((10 * 1,20 * 0,80 - 2 - 2 - 1) * 0,5 - 2,55), więc wynik jest prawdziwy (mój lunch był bezpłatny).
Uwagi:
- Dokładność musi wynosić co najmniej 2 miejsca po przecinku.
- Możesz przyjmować dane wejściowe jako ciąg znaków z nowymi liniami (opcjonalny znak nowej linii) lub inny znak separacji albo tablicę / listę danych wejściowych.
15 tipjako0.15 tip