题库练习 Interacdive Problem
← 上一题 下一题 →

A14827 | Interacdive Problem

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

This problem is interactive.

We decided to play a game with you and guess the number $x$ ( $1 \le x < n$ ), where you know the number $n$ .

You can make queries like this:

- + c: this command assigns $x = x + c$ ( $1 \le c < n$ ) and then returns you the value $\lfloor\frac{x}{n}\rfloor$ ( $x$ divide by $n$ and round down).

You win if you guess the current number with no more than $10$ queries.

输入格式

无

输出格式

The interaction begins by reading an integer $n$ ( $2 < n \le 1000$ ), which is written in the input data on its own line.

Then you can make no more than $10$ queries. To make a query, print on a separate line:

- + c: this command will assign $x = x + c$ ( $1 \le c < n$ ) and then print $\lfloor\frac{x}{n}\rfloor$ (divide $x$ by $n$ and round down) on a separate line.

Print the answer, like the queries, on a separate line. The answer doesn't count in number of queries. To output it, use the following format:

- ! x: the current value of $x$ .

After that, your program should exit.

You have to use a flush operation right after printing each line. For example, in C++ you should use the function fflush(stdout), in Java — System.out.flush(), in Pascal — flush(output) and in Python — sys.stdout.flush().

Note that the interactor is not responsive.

To make a hack, use the following format: a single line must contain two numbers $x$ and $n$ , separated by a space.

输入输出样例

输入 #1
3

1
输出 #1
+ 1

! 3
输入 #2
5

0

0

1
输出 #2
+ 1

+ 1

+ 1

! 5
输入 #3
10

0

0

1

2
输出 #3
+ 2

+ 2

+ 3

+ 8

! 20
C++ 编辑器
输入
输出