My 1st Correct Code
#include <iostream>
using namespace std;
int main() {
cin.tie(0);
ios_base::sync_with_stdio(0);
int N;
cin >> N;
int* score = new int[N + 1];
for (int i = 1; i <= N; i++) {
cin >> score[i];
}
float div; float min = score[N];
float* avg = new float[N + 1];
avg[N] = 0;
float max_avg = 0;
for (int i = N-1; i > 1; i--) {
div = N - i;
float sum = (avg[i + 1] * (div - 1)) + min;
if (min > score[i]) min = score[i];
avg[i] = (sum + score[i] - min) / div;
if (avg[i] > max_avg) {
max_avg = avg[i];
}
}
for (int i = 1; i <= N; i++) {
if (avg[i] == max_avg)
printf("%d\n", i-1);
}
}
comments
2020-01-17 When calculating average - float or double? but not integer
