Задача "Среднее арифметическое"

Всем привет, Не могу найти ошибку. Не проходит 5 тест. Какие входные параметры теста не знаю. Возможно из-за вывода лишних нулей в дробной части. Не знаю как можно решить эту проблему. Условие задачи ниже. Вот мой код:

#include <iostream>
#include <vector>
#include <set>
#include <iomanip> 
using namespace std;

//ifstream cin("input.txt");
//ofstream cout("output.txt");



int main()
{
    long long n, a, count = 0;
    double sum = 0;
    char c;
    vector <double> mvec;
    vector<double> average;
    vector<double>::iterator it;
    cin >> n;
    for (int i = 0; i < n; i++) {
        cin >> c;

        if (c == '+') {
            cin >> a;
            mvec.push_back(a);
            sum += a;
            count++;
        }

        else {
            cin >> a;
            it = std::find(mvec.begin(), mvec.end(), a);
            mvec.erase(it);
            sum -= a;
            count--;

        }
        average.push_back(sum / count);
    }
    cout.setf(ios::fixed);
    cout.precision(11);

    if(average.size() != 0)
        for (auto it = average.begin(); it != average.end(); ++it) {
            cout   <<  *it << endl;
        }
    else {
        cout << 0;
    }
    return 0;
}

введите сюда описание изображения


Ответы (1 шт):

Автор решения: Mikhailo

Попробуйте так:

int main() {
    unsigned int  N;
    unsigned long long summa = 0;
    cin >> N;

    for (unsigned int n = 1; n <= N; n++) {
        char c;
        unsigned long long value;
        cin >> c >> value;

        if (c == '+') summa += value;
        else summa -= value;

        cout << setprecision(12) << double(summa) / n << endl;
        }
    }

Но если хотите, чтоб ответ был гарантированно правильным - давайте ссылку, где эта задача проверяется.

→ Ссылка