我这个哪里错了
#include<iostream>
using namespace std;
bool a[10000003] = {1,1};
int b[10000003];
int main()
{
int m,q;
cin >> m >> q;
for(int i = 2; i*i <= m; i++)
{
if(!a[i])
for(int j = i*i; j <= m; j+=i)
{
a[j] = 1;
}
}
int cur = 0;
for(int i = 2; i <= m; i++)
{
if(!a[i])
{
cur++;
b[cur] = i;
}
}
for(int i = 1; i <= q; i++)
{
int n;
cin >> n;
cout << b[n] << endl;
}
return 0;
}