Catalogo Execution killed

Ho provato a fare questo problema però arrivo a fare solo 10/100

#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
int cat[100000000];
void aggiungi(long long int id)
{
   cat[id]=cat[id]+1;
}
void togli(long long int id)
{
   cat[id]=cat[id]-1;
}
int conta(long long int id)
{
   return cat[id];
}

Gli id arrivano fino a 10^{18}.