#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; int isprime[100010]; int prefix[100010]; void sieve(int n){ memset(isprime, 1, sizeof(isprime)); isprime[2] = true; isprime[0] = isprime[1] = false; for(int i=2;i*i<=n;i++){ if(isprime[i]){ for(int j=i+i;j<=n;j+=i){ isprime[j] = false; } } } prefix[0] = 0; for(int i=1;i<=n;i++){ if(isprime[i]){ prefix[i] = prefix[i-1]+1; }else{ prefix[i] = prefix[i-1]; } } } int main(){ int g; cin >> g; sieve(100000); for(int a0 = 0; a0 < g; a0++){ int n; cin >> n; if(prefix[n]%2 == 1){ cout<<"Alice\n"; }else{ cout<<"Bob\n"; } // your code goes here } return 0; }