Задача: учебна зала
Учебна зала има правоъгълен размер l на w метра, без колони във вътрешността си. Залата е разделена на две части – лява и дясна, с коридор - приблизително по средата. В лявата и в дясната част има редици с бюра. В задната част на залата има голяма входна врата. В предната част на залата има катедра с подиум за преподавателя. Едно работно място заема 70 на 120 cm (маса с размер 70 на 40 cm + място за стол и преминаване с размер 70 на 80 cm). Коридорът е широк поне 100 cm. Изчислено е, че заради входната врата (която е с отвор 160 cm) се губи точно 1 работно място, а заради катедрата (която е с размер 160 на 120 cm) се губят точно 2 работни места. Напишете програма, която въвежда размери на учебната зала и изчислява броя работни места в нея при описаното разположение (вж. фигурата).
Входни данни
От конзолата се четат 2 числа, по едно на ред: l (дължина в метри) и w (широчина в метри).
Ограничения: 3 ≤ w ≤ l ≤ 100.
Изходни данни
Да се отпечата на конзолата едно цяло число: броят места в учебната зала.
ПРИМЕРИ
ВХОД
15
8.9
ИЗХОД
129
ВХОД
8.4
5.2
ИЗХОД
39
Ето го кода ми на тази задача:
- Код: Избери целия код
l = float(input())
w = float(input())
cml = l * 100
cmw = w * 100
result = int(cml / 120) * int((cmw - 100) / 70) - 3
print(result)
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Задача: зеленчукова борса
Градинар продава реколтата от градината си на зеленчуковата борса. Продава зеленчуци за N лева на килограм и плодове за M лева за килограм. Напишете програма, която да пресмята приходите от реколтата в евро (ако приемем, че едно евро е равно на 1.94 лв.).
Входни данни
От конзолата се четат 4 числа, по едно на ред:
Първи ред – Цена за килограм зеленчуци – число с плаваща запетая.
Втори ред – Цена за килограм плодове – число с плаваща запетая.
Трети ред – Общо килограми на зеленчуците – цяло число.
Четвърти ред – Общо килограми на плодовете – цяло число.
Ограничения: Всички числа ще са в интервала от 0.00 до 1000.00
Изходни данни
Да се отпечата на конзолата едно число с плаваща запетая: приходите от всички плодове и зеленчуци в евро.
ПРИМЕРИ
ВХОД
0.194
19.4
10
10
ИЗХОД
101
ВХОД
1.5
2.5
10
10
ИЗХОД
20.6185567010309
Ето моя код по задачата:
- Код: Избери целия код
cena_zelenchuci = float(input())
cena_plodove = float(input())
kg_zelenchuci = int(input())
kg_plodove = int(input())
bg = cena_zelenchuci * kg_zelenchuci + cena_plodove * kg_plodove
print(bg / 1.94)
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ЕДНА СЪСТЕЗАТЕЛСКА ЗАДАЧА
Ели неочаквано се оказа въвлечена в последния турнир Mortal Kombat. Това е състезание по бойни изкуства, в което участниците се бият до смърт един срещу друг. Ели знае, че в турнира участват N по-добри от нея бойци и MM по-слаби такива. Тя ще загуби всяка битка срещу по-силен противник и ще спечели всяка срещу по-слаб. Ако двама противника от една и съща класа (тоест двама по-силни или двама по-слаби) се бият един срещу друг, макар и малко странно, и двамата загиват. Разбира се, ако по-силен от нея противник се бие срещу по-слаб такъв, то той ще спечели и оцелее, докато по-слабият ще загине.
За всяка битка двама от все още живите участници биват избрани на произволен принцип с равна вероятност. В края на битката или един или нула от тях остават живи, спрямо гореописаните правила. Изчислете какъв е шансът Ели да оцелее и спечели турнира.
Вход
На единствен ред на стандартния вход са зададени две цели числа N и M – съответно броят по-силни и по-слаби от Ели участници.
Изход
На стандартния изход изпечатайте едно единствено число с плаваща запетая между 0 и 1, включително - шансът Ели да спечели турнира и оцелее. Отговорът ще бъде зачетен за верен при абсолютна или релативна разлика, по-малка от 10-9.
Ограничения
1 ≤ N, M ≤ 100
Примерен Вход Примерен Изход
2 1 0.333333333
42 13 0.023255814
В първия примерен тест в турнира участват общо 4 души – Ели, двама по-силни противника и един по-слаб. Ако първата битка е между двамата по-силни, то и двамата загиват, оставяйки Ели срещу по-слабия. Така тя със сигурност печели и оцелява, като шансовете за това са 1/6. В противен случай тя ще оцелее след първия кръг единствено ако по-слабият участник участва в този кръг, шансовете за което са 1/2. След това остават живи единствено Ели и двамата по-силни противници, в който случай тя би оцеляла единствено ако те се бият един срещу друг. Шансът за това е 1/3 (ако вече по-слабият участник е загинал). Така шансовете за оцеляване на Ели през целия турнир са 1/6 + 1/2 * 1/3 = 1/3.
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Тази задача е състезателска. Не разбирам къде ми е грешката? Имам 80 точки. Ето кода ми, който е на C++:
- Код: Избери целия код
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n, m;
cin >> n >> m;
double answer = (double)1 / (n + 1);
cout << fixed << setprecision(9) << (double)answer << endl;
return 0;
}
Върви за примерите. Може ли да ми помогнете?
Знам, че има излишни неща в кодовете ми, но последната задача я мъча от много време. Постоянно променям кода си, но не се получават всички верни тестови примери.
Благодаря на всички, които ще се отзоват да ми помогнат.

Меню