13289. Alice and Bob
Constraints
Time Limit: 1 secs, Memory Limit: 256 MB
Description
Alice and Bob love games very much!
Today they want to play an old game. At the beginning of the game, there are 10^9 stones put in a line. They play in turn and at each turn, Alice or Bob can take at least A stones and at most B stones. They must take stones from left to right, more precisely, they can take the ith (counting from left to right) stone only if for all j < i, the jth stone has been taken. There is a bomb hide in the Nth stone, and who takes the bomb will lose the game. Alice always plays first. If they both play optimally, who will win the game?Input
The input begins with a line containing an integer T (T<=100000), which indicates the number of test cases. The following T lines each contain three integers N, A and B (1<=N<=10^6, 1<=A<=B<=10^6).
Output
For each test case, output one line containing the winner ("Alice" or "Bob").
Sample Input
61 2 32 1 310 1 111 1 110 2 311 2 3
Sample Output
BobAliceAliceBobAliceBob
Problem Source
"6CIT杯"第五届中山大学ICPC新手赛 by 刘智
// Problem#: 13289
// Submission#: 3520064
// The source code is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License
// URI: http://creativecommons.org/licenses/by-nc-sa/3.0/
// All Copyright reserved by Informatic Lab of Sun Yat-sen University
#include <iostream>
#include <string>
#include <algorithm>
#include <vector>
#include <stdio.h>
using namespace std;
int main() {
//std::ios::sync_with_stdio(false);
int caseNum;
scanf("%d", &caseNum);
while (caseNum--) {
int N, A, B;
scanf("%d%d%d", &N, &A, &B);
N %= A + B;
if (0 < N && N <= A) printf("Bob\n");
else printf("Alice\n");
}
return 0;
}