#include using namespace std; int main() { long long N, K; if (!(cin >> N >> K)) return 0; // Nếu N = 1, không có ước d > 1 nào, Bob thắng. if (N == 1) { cout << "Bob" << endl; return 0; } // Kiểm tra xem có tồn tại ít nhất một ước d của N sao cho 1 < d <= K không. // Chỉ cần tìm ước nhỏ nhất của N (khác 1), gọi là p. // Nếu p <= K, Alice có thể thực hiện ít nhất một nước đi. long long smallest_divisor = -1; for (long long i = 2; i * i <= N; ++i) { if (N % i == 0) { smallest_divisor = i; break; } } if (smallest_divisor == -1) smallest_divisor = N; // N là số nguyên tố if (smallest_divisor <= K) { // Nếu có ít nhất một lựa chọn, trong các bài toán này thường Alice sẽ thắng. cout << "Alice" << endl; } else { // Không có ước nào <= K cout << "Bob" << endl; } return 0; }