Codeforces Round 670 (Div. 2)
E
Deleting Numbers
Codeforces
2600
原题
← D→
翻译中…

This is an interactive problem.

翻译中…

There is an unknown integer $x$ ($1\le x\le n$). You want to find $x$.

翻译中…

At first, you have a set of integers $\{1, 2, \ldots, n\}$. You can perform the following operations no more than $10000$ times:

翻译中…
  • A $a$: find how many numbers are multiples of $a$ in the current set.
  • B $a$: find how many numbers are multiples of $a$ in this set, and then delete all multiples of $a$, but $x$ will never be deleted (even if it is a multiple of $a$). In this operation, $a$ must be greater than $1$.
  • C $a$: it means that you know that $x=a$. This operation can be only performed once.
翻译中…

Remember that in the operation of type B $a \gt 1$ must hold.

翻译中…

Write a program, that will find the value of $x$.

翻译中…

Input

翻译中…

The first line contains one integer $n$ ($1\le n\le 10^5$). The remaining parts of the input will be given throughout the interaction process.

翻译中…

Interaction

翻译中…

In each round, your program needs to print a line containing one uppercase letter A, B or C and an integer $a$ ($1\le a\le n$ for operations A and C, $2\le a\le n$ for operation B). This line desribes operation you make.

翻译中…

If your operation has type C your program should terminate immediately.

翻译中…

Else your program should read one line containing a single integer, which is the answer to your operation.

翻译中…

After outputting each line, don't forget to flush the output. To do it use:

翻译中…
  • fflush(stdout) in C/C++;
  • System.out.flush() in Java;
  • sys.stdout.flush() in Python;
  • flush(output) in Pascal;
  • See the documentation for other languages.
翻译中…

It is guaranteed, that the number $x$ is fixed and won't change during the interaction process.

翻译中…

Hacks:

翻译中…

To make a hack, use such input format:

翻译中…

The only line should contain two integers $n$, $x$ ($1 \leq x \leq n \leq 10^5$).

翻译中…

Note

翻译中…

Note that to make the sample more clear, we added extra empty lines. You shouldn't print any extra empty lines during the interaction process.

翻译中…

In the first test $n=10$ and $x=4$.

翻译中…

Initially the set is: $\{1,2,3,4,5,6,7,8,9,10\}$.

翻译中…

In the first operation, you ask how many numbers are multiples of $4$ and delete them. The answer is $2$ because there are two numbers divisible by $4$: $\{4,8\}$. $8$ will be deleted but $4$ won't, because the number $x$ will never be deleted. Now the set is $\{1,2,3,4,5,6,7,9,10\}$.

翻译中…

In the second operation, you ask how many numbers are multiples of $2$. The answer is $4$ because there are four numbers divisible by $2$: $\{2,4,6,10\}$.

翻译中…

In the third operation, you ask how many numbers are multiples of $8$. The answer is $0$ because there isn't any number divisible by $8$ in the current set.

翻译中…

In the fourth operation, you know that $x=4$, which is the right answer.

翻译中…

样例

Input #1
10

2

4

0
Output #1
B 4

A 2

A 8

C 4
InputCopy OutputCopy
题目信息
题号
1406E
时间限制
1 s
内存限制
512 MB
标签
交互题
数学
数论

题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。