310042: CF1775B. Gardener and the Array
Memory Limit:256 MB
Time Limit:2 S
Judge Style:Text Compare
Creator:
Submit:0
Solved:0
Description
Gardener and the Array
题意翻译
**题目翻译:** 题目描述: 园丁卡齐米尔·卡齐米罗维奇有一个 $n$ 个整数 $c_1,c_2,\cdots,c_n$ 的数组。 他想检查原始数组中是否有两个不同的子序列 $a$ 和 $b$,其中 $f(a)=f(b)$,其中,$f(x)$ 是序列 $x$ 中所有数字的位或。 序列 $q$ 是 $p$ 的子序列,如果可以通过删除几个(可能没有或全部)元素从 $p$ 获得 $q$。 如果原始序列中元素的索引集合不同,则认为两个子序列不同,即在比较子序列时不考虑元素的值。 输入: 每个测试包含多个测试用例。第一行包含测试用例数 $t(1\leq t\leq 10^{5})$。测试用例的描述如下。 每个测试用例的第一行包含一个整数 $n(1\leq n\leq 10^{5})$,数组 $c$ 的大小。 在这个问题中对数组 $c$ 的描述是隐式给出的,以加快输入速度。 测试用例的以下 $n$ 行中的第 $(i+1)$ 行以整数 $k_i(1\leq k_i\leq 10^{5})$ 开始,数字 $c_i$ 中的设置位数。接下来是 $k_i$ 个不同的整数 $ p_{i,1},p_{i,2},\cdots,p_{i,k_i}$ $(1\leq p_i \leq 2 \times 10^{5})$,数字 $c_i$ 设置为 $1$ 的位数。换句话说,$c_i=2^{p_{i,1}}+2^{p_{i,2}}+\cdots+2^{p_{i,k_i}}$。 保证所有测试中 $k_i$ 的总和不超过 $10^{5}$。 输出: 对于每组输入,如果存在 $f(a)=f(b)$ 的两个不同子序列,则打印“是”,否则打印“否”。 您可以在任何情况下输出答案(上限或下限)。例如,字符串$ “yEs”,“yEs”,“yEs”$ 和 $“yEs”$ 将被识别为肯定响应。 说明/提示: 可以证明,在第一个测试用例中,没有两个不同的子序列 $a$ 和 $b$,其中 $f(a)=f(b)$。 在第二个测试案例中,可能的答案之一是以下子序列:由位置 $1$ 处的元素形成的子序列 $a$,以及由位置 $1$ 和 $2$ 处的元素构成的子序列 $b$。 在第三个测试案例中,可能的答案之一是以下子序列:由位置 $1,2,3$ 和 $4$ 处的元素形成的子序列 $a$,以及由位置 $2,3,4$ 处的元件形成的子顺序 $b$。题目描述
The gardener Kazimir Kazimirovich has an array of $ n $ integers $ c_1, c_2, \dots, c_n $ . He wants to check if there are two different subsequences $ a $ and $ b $ of the original array, for which $ f(a) = f(b) $ , where $ f(x) $ is the [bitwise OR](https://en.wikipedia.org/wiki/Bitwise_operation#OR) of all of the numbers in the sequence $ x $ . A sequence $ q $ is a subsequence of $ p $ if $ q $ can be obtained from $ p $ by deleting several (possibly none or all) elements. Two subsequences are considered different if the sets of indexes of their elements in the original sequence are different, that is, the values of the elements are not considered when comparing the subsequences. ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF1775B/01e7b88f6704ebb4d7f093f81e886f156c238509.png)输入输出格式
输入格式
Each test contains multiple test cases. The first line contains the number of test cases $ t $ ( $ 1 \le t \le 10^5 $ ). The description of the test cases follows. The first line of each test case contains one integer $ n $ ( $ 1 \le n \le 10^5 $ ) — the size of the array $ c $ . The description of the array $ c $ in this problem is given implicitly to speed up input. The $ (i + 1) $ -st of the following $ n $ lines of the test case begins with an integer $ k_i $ ( $ 1 \le k_i \le 10^5 $ ) — the number of set bits in the number $ c_i $ . Next follow $ k_i $ distinct integers $ p_{i, 1}, p_{i, 2}, \dots, p_{i, k_i} $ ( $ 1 \le p_i \le 2 \cdot 10^5 $ ) —the numbers of bits that are set to one in number $ c_i $ . In other words, $ c_i = 2^{p_{i, 1}} + 2^{p_{i, 2}} + \ldots + 2^{p_{i, k_i}} $ . It is guaranteed that the total sum of $ k_i $ in all tests does not exceed $ 10^5 $ .
输出格式
For each set of input, print "Yes" if there exist two different subsequences for which $ f(a) = f(b) $ , and "No" otherwise. You can output the answer in any case (upper or lower). For example, the strings "yEs", "yes", "Yes", and "YES" will be recognized as positive responses.
输入输出样例
输入样例 #1
5
3
2 1 5
2 2 4
2 2 3
2
2 1 2
1 2
4
3 1 2 4
2 2 4
4 1 2 5 6
2 2 5
5
3 3 1 2
3 2 5 3
5 7 2 3 1 4
5 1 2 6 3 5
3 2 6 3
2
1 1
1 2
输出样例 #1
No
Yes
Yes
Yes
No
说明
It can be proven that in the first test case there are no two different subsequences $ a $ and $ b $ for which $ f(a) = f(b) $ . In the second test case, one of the possible answers are following subsequences: the subsequence $ a $ formed by the element at position $ 1 $ , and the subsequence $ b $ formed by the elements at positions $ 1 $ and $ 2 $ . In the third test case, one of the possible answers are following subsequences: the subsequence $ a $ formed by elements at positions $ 1 $ , $ 2 $ , $ 3 $ and $ 4 $ , and the subsequence $ b $ formed by elements at positions $ 2 $ , $ 3 $ and $ 4 $ .Input
题意翻译
**题目翻译:** 题目描述: 园丁卡齐米尔·卡齐米罗维奇有一个 $n$ 个整数 $c_1,c_2,\cdots,c_n$ 的数组。 他想检查原始数组中是否有两个不同的子序列 $a$ 和 $b$,其中 $f(a)=f(b)$,其中,$f(x)$ 是序列 $x$ 中所有数字的位或。 序列 $q$ 是 $p$ 的子序列,如果可以通过删除几个(可能没有或全部)元素从 $p$ 获得 $q$。 如果原始序列中元素的索引集合不同,则认为两个子序列不同,即在比较子序列时不考虑元素的值。 输入: 每个测试包含多个测试用例。第一行包含测试用例数 $t(1\leq t\leq 10^{5})$。测试用例的描述如下。 每个测试用例的第一行包含一个整数 $n(1\leq n\leq 10^{5})$,数组 $c$ 的大小。 在这个问题中对数组 $c$ 的描述是隐式给出的,以加快输入速度。 测试用例的以下 $n$ 行中的第 $(i+1)$ 行以整数 $k_i(1\leq k_i\leq 10^{5})$ 开始,数字 $c_i$ 中的设置位数。接下来是 $k_i$ 个不同的整数 $ p_{i,1},p_{i,2},\cdots,p_{i,k_i}$ $(1\leq p_i \leq 2 \times 10^{5})$,数字 $c_i$ 设置为 $1$ 的位数。换句话说,$c_i=2^{p_{i,1}}+2^{p_{i,2}}+\cdots+2^{p_{i,k_i}}$。 保证所有测试中 $k_i$ 的总和不超过 $10^{5}$。 输出: 对于每组输入,如果存在 $f(a)=f(b)$ 的两个不同子序列,则打印“是”,否则打印“否”。 您可以在任何情况下输出答案(上限或下限)。例如,字符串$ “yEs”,“yEs”,“yEs”$ 和 $“yEs”$ 将被识别为肯定响应。 说明/提示: 可以证明,在第一个测试用例中,没有两个不同的子序列 $a$ 和 $b$,其中 $f(a)=f(b)$。 在第二个测试案例中,可能的答案之一是以下子序列:由位置 $1$ 处的元素形成的子序列 $a$,以及由位置 $1$ 和 $2$ 处的元素构成的子序列 $b$。 在第三个测试案例中,可能的答案之一是以下子序列:由位置 $1,2,3$ 和 $4$ 处的元素形成的子序列 $a$,以及由位置 $2,3,4$ 处的元件形成的子顺序 $b$。Output
**题目大意**
园丁卡齐米尔·卡齐米罗维奇有一个包含 $ n $ 个整数的数组 $ c_1, c_2, \cdots, c_n $。
他想要检查原始数组中是否存在两个不同的子序列 $ a $ 和 $ b $,使得 $ f(a) = f(b) $,这里的 $ f(x) $ 表示序列 $ x $ 中所有数字的按位或操作。
如果序列 $ q $ 可以通过删除序列 $ p $ 中的几个(可能没有或全部)元素得到,则 $ q $ 是 $ p $ 的子序列。
如果两个子序列在原始序列中的元素索引集合不同,则认为这两个子序列是不同的,即在比较子序列时不考虑元素的值。
**输入输出数据格式**
**输入格式**:
每个测试包含多个测试用例。第一行包含测试用例数 $ t(1 \leq t \leq 10^{5}) $。每个测试用例的第一行包含一个整数 $ n(1 \leq n \leq 10^{5}) $,即数组 $ c $ 的大小。数组 $ c $ 的描述是隐式给出的,以加快输入速度。测试用例的接下来的 $ n $ 行中的第 $(i+1)$ 行以整数 $ k_i(1 \leq k_i \leq 10^{5}) $ 开始,表示数字 $ c_i $ 中为 1 的位数。接下来是 $ k_i $ 个不同的整数 $ p_{i,1}, p_{i,2}, \cdots, p_{i,k_i} $ $(1 \leq p_i \leq 2 \times 10^{5})$,表示数字 $ c_i $ 设置为 1 的位数。换句话说,$ c_i = 2^{p_{i,1}} + 2^{p_{i,2}} + \cdots + 2^{p_{i,k_i}} $。保证所有测试中 $ k_i $ 的总和不超过 $ 10^{5} $。
**输出格式**:
对于每组输入,如果存在 $ f(a) = f(b) $ 的两个不同子序列,则打印“是”,否则打印“否”。输出答案时大小写不敏感。**题目大意** 园丁卡齐米尔·卡齐米罗维奇有一个包含 $ n $ 个整数的数组 $ c_1, c_2, \cdots, c_n $。 他想要检查原始数组中是否存在两个不同的子序列 $ a $ 和 $ b $,使得 $ f(a) = f(b) $,这里的 $ f(x) $ 表示序列 $ x $ 中所有数字的按位或操作。 如果序列 $ q $ 可以通过删除序列 $ p $ 中的几个(可能没有或全部)元素得到,则 $ q $ 是 $ p $ 的子序列。 如果两个子序列在原始序列中的元素索引集合不同,则认为这两个子序列是不同的,即在比较子序列时不考虑元素的值。 **输入输出数据格式** **输入格式**: 每个测试包含多个测试用例。第一行包含测试用例数 $ t(1 \leq t \leq 10^{5}) $。每个测试用例的第一行包含一个整数 $ n(1 \leq n \leq 10^{5}) $,即数组 $ c $ 的大小。数组 $ c $ 的描述是隐式给出的,以加快输入速度。测试用例的接下来的 $ n $ 行中的第 $(i+1)$ 行以整数 $ k_i(1 \leq k_i \leq 10^{5}) $ 开始,表示数字 $ c_i $ 中为 1 的位数。接下来是 $ k_i $ 个不同的整数 $ p_{i,1}, p_{i,2}, \cdots, p_{i,k_i} $ $(1 \leq p_i \leq 2 \times 10^{5})$,表示数字 $ c_i $ 设置为 1 的位数。换句话说,$ c_i = 2^{p_{i,1}} + 2^{p_{i,2}} + \cdots + 2^{p_{i,k_i}} $。保证所有测试中 $ k_i $ 的总和不超过 $ 10^{5} $。 **输出格式**: 对于每组输入,如果存在 $ f(a) = f(b) $ 的两个不同子序列,则打印“是”,否则打印“否”。输出答案时大小写不敏感。
园丁卡齐米尔·卡齐米罗维奇有一个包含 $ n $ 个整数的数组 $ c_1, c_2, \cdots, c_n $。
他想要检查原始数组中是否存在两个不同的子序列 $ a $ 和 $ b $,使得 $ f(a) = f(b) $,这里的 $ f(x) $ 表示序列 $ x $ 中所有数字的按位或操作。
如果序列 $ q $ 可以通过删除序列 $ p $ 中的几个(可能没有或全部)元素得到,则 $ q $ 是 $ p $ 的子序列。
如果两个子序列在原始序列中的元素索引集合不同,则认为这两个子序列是不同的,即在比较子序列时不考虑元素的值。
**输入输出数据格式**
**输入格式**:
每个测试包含多个测试用例。第一行包含测试用例数 $ t(1 \leq t \leq 10^{5}) $。每个测试用例的第一行包含一个整数 $ n(1 \leq n \leq 10^{5}) $,即数组 $ c $ 的大小。数组 $ c $ 的描述是隐式给出的,以加快输入速度。测试用例的接下来的 $ n $ 行中的第 $(i+1)$ 行以整数 $ k_i(1 \leq k_i \leq 10^{5}) $ 开始,表示数字 $ c_i $ 中为 1 的位数。接下来是 $ k_i $ 个不同的整数 $ p_{i,1}, p_{i,2}, \cdots, p_{i,k_i} $ $(1 \leq p_i \leq 2 \times 10^{5})$,表示数字 $ c_i $ 设置为 1 的位数。换句话说,$ c_i = 2^{p_{i,1}} + 2^{p_{i,2}} + \cdots + 2^{p_{i,k_i}} $。保证所有测试中 $ k_i $ 的总和不超过 $ 10^{5} $。
**输出格式**:
对于每组输入,如果存在 $ f(a) = f(b) $ 的两个不同子序列,则打印“是”,否则打印“否”。输出答案时大小写不敏感。**题目大意** 园丁卡齐米尔·卡齐米罗维奇有一个包含 $ n $ 个整数的数组 $ c_1, c_2, \cdots, c_n $。 他想要检查原始数组中是否存在两个不同的子序列 $ a $ 和 $ b $,使得 $ f(a) = f(b) $,这里的 $ f(x) $ 表示序列 $ x $ 中所有数字的按位或操作。 如果序列 $ q $ 可以通过删除序列 $ p $ 中的几个(可能没有或全部)元素得到,则 $ q $ 是 $ p $ 的子序列。 如果两个子序列在原始序列中的元素索引集合不同,则认为这两个子序列是不同的,即在比较子序列时不考虑元素的值。 **输入输出数据格式** **输入格式**: 每个测试包含多个测试用例。第一行包含测试用例数 $ t(1 \leq t \leq 10^{5}) $。每个测试用例的第一行包含一个整数 $ n(1 \leq n \leq 10^{5}) $,即数组 $ c $ 的大小。数组 $ c $ 的描述是隐式给出的,以加快输入速度。测试用例的接下来的 $ n $ 行中的第 $(i+1)$ 行以整数 $ k_i(1 \leq k_i \leq 10^{5}) $ 开始,表示数字 $ c_i $ 中为 1 的位数。接下来是 $ k_i $ 个不同的整数 $ p_{i,1}, p_{i,2}, \cdots, p_{i,k_i} $ $(1 \leq p_i \leq 2 \times 10^{5})$,表示数字 $ c_i $ 设置为 1 的位数。换句话说,$ c_i = 2^{p_{i,1}} + 2^{p_{i,2}} + \cdots + 2^{p_{i,k_i}} $。保证所有测试中 $ k_i $ 的总和不超过 $ 10^{5} $。 **输出格式**: 对于每组输入,如果存在 $ f(a) = f(b) $ 的两个不同子序列,则打印“是”,否则打印“否”。输出答案时大小写不敏感。