Фред - квазі-дружелюбний хлопець, але насправді він підлий.
Через це Фред живе один в маленькій квартирі в Лос-Альтосі, Каліфорнія. Фред настільки злий, тому що він дуже особливо стосується води. Тому він потребує вашої допомоги, щоб з'ясувати, яка його рахунок на воду.
Ваше завдання - написати функцію або програму, яка повертає його рахунок за воду, враховуючи кількість води, яка використовується як вхідна (яка завжди є цілим числом).
Споживання води відбувається в ярусах. Це означає, що існують діапазони цін залежно від кількості води.
Це рівні, їхні ціни та кількість води, яким вони відповідають:
Tier I
First 10 Ccf: $3.8476/Ccf
Tier II
Next 17 Ccf: $4.0932/Ccf
Tier III
All subsequent water: $4.9118/Ccf
За п ять сотень кубічних футів (Ccf) передбачені такі додаткові збори:
CPUC fee: 1.5% of above charges
LIRA quantity surcharge: $0.047*n
PBOP amoritization surcharge: $0.004*n
Сума плати за рівень І, ІІ рівня, ІІІ рівня, CPUC, LIRA та PBOP - загальна сума води. Цю суму вам слід повернути або надрукувати на консолі, округленій до двох знаків після коми.
Ось два приклади:
Input: 15
... Calculations which you do not need to output but here to help explain:
Tier I: 10*3.8476 = 38.476
Tier II: (15-10)*4.0932 = 20.466
Tier III: 0*4.9118 = 0
Tiers sum: 58.942
CPUC: 1.5% of 58.942 = 0.88413
LIRA: 0.047*15 = 0.705
PBOP: 0.004*15 = 0.06
Total sum: 58.942 + 0.88413 + 0.705 + 0.06 = 60.59113
...
Output: 60.59
Input: 100
... Calculations which you do not need to output but here to help explain:
Tier I: 10*3.8476 = 38.476
Tier II: 17*4.0932 = 69.5844
Tier III: (100-10-17)*4.9118 = 358.5614
Tiers sum: 466.6218
CPUC: 1.5% of = 6.999327
LIRA: 0.047*100 = 4.7
PBOP: 0.004*100 = 0.4
Total sum: 478.721127
...
Output: 478.72
Це код гольфу, тому найкоротший код у байтах виграє!
n
?