Здравствуйте, есть такое задание:
Дано количество бросков, брошенных баскетболистами из зон разных точек. Подсчитайте, сколько очков набрал самый точный баскетболист. В первой строке записано целое число n (1 ≤ n ≤ 100). Ниже представлены двухочковые (броски, попадания), трехочковые (броски, попадания) и штрафные броски (броски, попадания).
Я написала код и вроде бы всё правильно, но всёравно ответ не совпадает (у меня 944 а должен быть 2338) может кто нибудь знает почему? Код и input в txt файле
Answers & Comments
В задании ведь чётко сказано: "Подсчитайте, сколько очков набрал самый точный баскетболист". Значит находим самого точного, путём деления всех голов на все броски. И выводим его суммарные очки. Вот правильно работающее решение:
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
double max_accur = 0;
int ans = 0;
for (int i = 0; i < n; ++i) {
double a_all, a_goal, b_all, b_goal, c_all, c_goal;
cin >> a_all >> a_goal >> b_all >> b_goal >> c_all >> c_goal;
double accur = (a_goal + b_goal + c_goal) / (a_all + b_all + c_all);
if (accur > max_accur) {
max_accur = accur;
ans = int(a_goal * 2 + b_goal * 3 + c_goal);
}
}
cout << ans;
}