测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A14379. Gates to Another World

编程题 普及/提高-

题目描述

![](/uploads/acgo/image/be3c141911d5290b_9d2c23d7e3db.jpeg)As mentioned previously William really likes playing video games. In one of his favorite games, the player character is in a universe where every planet is designated by a binary number from $0$ to $2^n - 1$ . On each planet, there are gates that allow the player to move from planet $i$ to planet $j$ if the binary representations of $i$ and $j$ differ in exactly one bit.

William wants to test you and see how you can handle processing the following queries in this game universe:

- Destroy planets with numbers from $l$ to $r$ inclusively. These planets cannot be moved to anymore.
- Figure out if it is possible to reach planet $b$ from planet $a$ using some number of planetary gates. It is guaranteed that the planets $a$ and $b$ are not destroyed.

输入格式

The first line contains two integers $n$ , $m$ ( $1 \leq n \leq 50$ , $1 \leq m \leq 5 \cdot 10^4$ ), which are the number of bits in binary representation of each planets' designation and the number of queries, respectively.

Each of the next $m$ lines contains a query of two types:

block l r — query for destruction of planets with numbers from $l$ to $r$ inclusively ( $0 \le l \le r < 2^n$ ). It's guaranteed that no planet will be destroyed twice.

ask a b — query for reachability between planets $a$ and $b$ ( $0 \le a, b < 2^n$ ). It's guaranteed that planets $a$ and $b$ hasn't been destroyed yet.

输出格式

For each query of type ask you must output "1" in a new line, if it is possible to reach planet $b$ from planet $a$ and "0" otherwise (without quotation marks).

输入输出样例

输入 #1
3 3
ask 0 7
block 3 6
ask 0 7
输出 #1
1
0
输入 #2
6 10
block 12 26
ask 44 63
block 32 46
ask 1 54
block 27 30
ask 10 31
ask 11 31
ask 49 31
block 31 31
ask 2 51
输出 #2
1
1
0
0
1
0

说明/提示

The first example test can be visualized in the following way:

![](/uploads/acgo/image/33f439cba5b6cf1b_515b20c17911.jpeg)Response to a query ask 0 7 is positive.

Next after query block 3 6 the graph will look the following way (destroyed vertices are highlighted):

![](/uploads/acgo/image/83c606aa7ef370b3_fe5b2e28e3ca.jpeg)Response to a query ask 0 7 is negative, since any path from vertex $0$ to vertex $7$ must go through one of the destroyed vertices.
上一题 去做题 下一题