#include using namespace std; int SieveOfEratosthenes(int upperBound) { int upperBoundSquareRoot = (int)sqrt((double)upperBound); bool *isComposite = new bool[upperBound + 1]; memset(isComposite, 0, sizeof(bool) * (upperBound + 1)); for (int m = 2; m <= upperBoundSquareRoot; m++) { if (!isComposite[m]) { //cout << m << " "; for (int k = m * m; k <= upperBound; k += m) isComposite[k] = true; } } vector v; for (int m = upperBoundSquareRoot; m <= upperBound; m++) if (!isComposite[m]) v.push_back(m); return v.size(); } int main() { int g; cin >> g; for(int c=1;c<=g;c++){ int n; cin >> n; /* int noofprimes = SieveOfEratosthenes(n); if(noofprimes % 2 ==1){ cout<<"Alice"< v; for (int i = 2; i <= n; i++) { for (int j = i * i; j <= n; j+=i) { arr[j - 1] = 1; } } for (int i = 2; i <= n; i++) { if (arr[i - 1] == 0) v.push_back(i); } int count = v.size(); if(v.size()%2==0){ cout<<"Bob"<