4 test cases passed. i'm getting run time error on 2

#include
using namespace std;
void prime(long int n)
{ int count=0;
int a[5000000]={0};

a[0]=a[1]=0;
a[2]=1;
for(long int i=3;i<=5000000;i+=2)
{
    a[i]=1;
}
for(long int i=3;i<=5000000;i+=2)
{
    if(a[i])
    {
        for(long int j=i*i;j<=5000000;j+=2*i)
            a[j]=0;
    }
}
for(long int i=0;i<=5000000;i++)
{
    if(a[i])
    {
        count++;
        if(count==n)
           { cout<<i;
            break;
           }
    }
}

}
int main() {
long int n;
cin>>n;
prime(n);

return 0;

}

Plz send your code by saving on ide only