Категория
Loading...
+ Нов въпрос
kosio197 avatar kosio197 104 Точки

[Judge]Java Fundamentals - 4 October 2015 - Dragon Accounting

Здравейте,

Може ли да помогнете с условието на тази задача. Гледа първия пример и по никакъв начин не мога да стигна до отговора:

вход:

12345.1234567

10;0;40;Machines:120.4

7;6;44;Product development:8.8;Taxes:12

END

изход:  11 12221.5234

По - горе в условието пише, че трябва да се следи статистика за всеки ден в ред:

hire employees -> check for raise -> give salaries -> fire employees -> check for additional income/expense -> check for bankruptcy.

Тоест преди да уволним 6-те работника от втория ден би трябвало да им платим т.е:

12345.1234567 - (40/30 * 10) - 120.4 - (40/30 * 10)  -  (44/30 * 7) + 8.8 - 12 = 12184.590123367

което не е верния отговор.

От друга страна гледам, че заплатите се плащат веднъж месечно, но тук нямам записи за 30 дена, а само за 2 дена, което предполага, че би трябвало да смятам само за тези два дена, но пък изхода е доста по - голям от началния бюджет и не виждам как със сметки за 2 дена мога да стигна до него.

В примера по - горе пък пише: "There are no employees left from day 1, so no money would be taken from your budget." - Това трябва ли да значи, че ако някой е уволнен преди края на месеца не получава пари?

Обобщено:

До колкото разбирам трябва да се смята на всеки 30 дена за крайния резултат, защото иначе можем да загубим точност, иначе на практика няма разлика дали ще ползвам преизчисленото за всеки ден, което ми трябва за да гледам за фалит (The boss also pays salaries every 30 days. ... Daily salary should be computed to the 9th digit after the decimal separator up and then kept to the 7th digits after the decimal point without any rounding)).

1. Какво правим, ако броя на дадените дни не се дели на 30 (т.е. имаме част от месец) ?

2.  Плащаме ли на уволнените за деня в който са уволнени?

Тагове:
0
Java Advanced 18/10/2015 21:13:28
Filkolev avatar Filkolev 4485 Точки

1. Заплати се плащат на всеки 30-ти ден, в другите дни - не. Т.е. ако имаш по-малко от 30 реда на входа няма да плащаш заплати въобще.

2. Да, след като плащането на заплати става като приоритет преди уволяването.

1
kosio197 avatar kosio197 104 Точки

Ок. Според тоова уточнение сметките трябва да са началната сума +/-  приходите/разходите от двата дена, т.е:

12345.1234567 - 120.4 + 8.8 - 12 = 12221.5234567,

което е доста различно от отговора (11 12221.5234).

Как стигаме до него?

И при всекидневните сметки, които правим за да сметнем дали не сме банкрутирали все пак смятаме и заплатите нали така?

0
18/10/2015 21:36:14
Filkolev avatar Filkolev 4485 Точки

Как ще е различно като е точно същото? Първото число е броят служители, които са във фирмата в края на програмата, след това е балансът, който е точно толкова, колкото си го сметнал. Явно не си си дочел условието, поне в частта за изхода :)

1
kosio197 avatar kosio197 104 Точки

Даааааа, 11 е броя на служителите, не е част от сумата  :)

Благодаря!

0