Можите дать пояснение к этому коду и почему он не работает?
ЗАДАНИЕ В С++ В массиве хранится информация о стоимости книг . Составить программу, которая выводит на экран номера книг, которые стоят ниже средней стоимости всех этих книг.
#include
using namespace std;
#define ll long long
#define ld long double
signed main(){
ll n;
cin >> n;
ld a[n],sum = 0;
for(ll i = 0; i < n; i++){
cin >> a[i];
sum += a[i];
}
ld av = sum/n;
for(ll i = 0; i < n; i++)
if(a[i] < av)
cout << i+1 << " ";
}