Koszt pokrycia podłogi płytkami

Zadanie 22 z 24 · rozdział 1Trudność: 2 z 3ceilarytmetykaformatowaniegeometria

Treść zadania

Dane są:

  • cena jednej płytki p (w złotych),
  • bok kwadratowej płytki t (w centymetrach),
  • długość podłogi L (w centymetrach),
  • szerokość podłogi W (w centymetrach).

Płytki układamy w prostokątną siatkę równolegle do ścian. Wzdłuż każdego wymiaru liczbę płytek zaokrąglamy w górę (ostatnią płytkę w rzędzie się docina, ale trzeba ją kupić w całości):

  • $n_L = \lceil L / t \rceil$
  • $n_W = \lceil W / t \rceil$
  • liczba płytek: $n = n_L \cdot n_W$

Oblicz całkowity koszt zakupu płytek: $n \cdot p$.

Dane wejściowe

4 liczby, każda w osobnej linii:

  • 1. linia: p — liczba rzeczywista
  • 2. linia: t — liczba całkowita
  • 3. linia: L — liczba całkowita
  • 4. linia: W — liczba całkowita

Dane wyjściowe

Jedna linia: całkowity koszt do 2 miejsc po przecinku.

Ograniczenia

  • $0 < p \le 1000$
  • $1 \le t, L, W \le 10^4$

Uwagi

  • Zaokrąglenie w górę daje funkcja math.ceil.

Przykład

Wejście
2
3
20
40
Wyjście
196.00

$n_L = \lceil 20 / 3 \rceil = 7$, $n_W = \lceil 40 / 3 \rceil = 14$, więc potrzeba $7 \cdot 14 = 98$ płytek, które kosztują $98 \cdot 2 = 196$ zł.

Zasady obowiązujące w rozdziale 1

Poniższe zadania polegają na wczytywaniu danych ze standardowego wejścia (stdin) i wypisywaniu wyniku na standardowe wyjście (stdout).
Każde zadanie (oraz każdy podpunkt w zadaniach wieloczęściowych, np. ZAD-05A … ZAD-05E) jest osobnym, niezależnym programem.

Konwencje wspólne:

  • Każda wartość wejściowa znajduje się w osobnej linii — wczytuj je dokładnie w podanej kolejności (np. float(input())).
  • Jeśli w danych wyjściowych jest „każda w oddzielnej linii” — po każdym wyniku wypisz znak nowej linii.
  • „Do 3 miejsc po przecinku” oznacza wypisanie liczby z dokładnie trzema cyframi po kropce, np. f"{y:.3f}" (19.000, -2.500). Analogicznie dla 2 miejsc.
  • Program nie wypisuje komunikatów typu „Podaj liczbę:”. Tekst podany w input("…") jest ignorowany przez sprawdzarkę.

Zadanie pochodzi z otwartego zbioru Nauka-Programowania (z rozwiązaniami wzorcowymi). Zgłoś błąd w treści lub testach.

Python uruchomi się w przeglądarce przy pierwszym teście.

Kod zapisuje się automatycznie w tej przeglądarce. Tab wstawia wcięcie; aby opuścić edytor klawiaturą, naciśnij Esc, a potem Tab.

Testy

Program dostaje „Wejście” przez input() i musi wypisać „Oczekiwane wyjście”. Liczby porównywane są z tolerancją 0,01, a tekst podany w input("…") nie jest sprawdzany.

Test 1

Nie uruchomiono
Wejście
2.5
30
120
80
Oczekiwane wyjście
30.00

Test 2

Nie uruchomiono
Wejście
1.99
50
210
210
Oczekiwane wyjście
49.75

Test 3

Nie uruchomiono
Wejście
10
20
100
60
Oczekiwane wyjście
150.00

Test 4

Nie uruchomiono
Wejście
3.5
100
1
1
Oczekiwane wyjście
3.50

Test 5

Nie uruchomiono
Wejście
0.75
25
101
99
Oczekiwane wyjście
15.00

Test 6

Nie uruchomiono
Wejście
4
33
100
200
Oczekiwane wyjście
112.00
Uruchom z własnymi danymi