E. Compatible Numbers time limit per test 4 seconds memory limit per test 256 megabytes input standard input output standard output Two integers x and y are compatible, if the result of their bitwise "AND" equals zero, that is, a & b = 0. Fo…
wo integers x and y are compatible, if the result of their bitwise "AND" equals zero, that is, a&b = 0. For example, numbers90(10110102) and 36(1001002) are compatible, as 10110102&1001002 = 02, and numbers 3(112) and 6(1102) are not com…
确实题目虽然有点水,但是开始的时候好像还真的没有想到怎么提取出这个编号一不小心感觉可以可以用unsigned char 这种类型,直接转为16进制,但是之后发现虽然第一次在codeblock中还行,但是第二天尝试的时候还是出错了,DEV中没有问题,所以瞬间感觉自己的肯定不是标准答案,查询之后才感觉位运算终于在题目中能够运用上了 #include <cstdio> #include <iostream> #include <cstring> using namespace…
You are given n strings s1, s2, ..., sn consisting of characters 0 and 1. m operations are performed, on each of them you concatenate two existing strings into a new one. On the i-th operation the concatenation saisbi is saved into a new string sn + …
点此看题面 大致题意: 给你\(n\)个\(m\)位二进制数.每组询问给你一个\(m\)位二进制数,要求你从\(0\)开始,依次对于这\(n\)个数进行\(and\)或\(or\)操作,问有多少种方案能够得到给你的这个二进制数. 找规律 不难想到去对每一位分别讨论. 则根据位运算法则可得: 当你把某一位的数\(and\ 0\),就相当于把这一位数赋值为\(0\). 当你把某一位的数\(or\ 1\),就相当于把这一位数赋值为\(1\). 当你把某一位的数\(and\ 1\)或者\(or\ 0\)…
点此看题面 大致题意: 给你一个序列\(a\),让你求出最长的一个子序列\(b\)满足\(b_i\&b_{i-1}!=0\). 位运算+\(DP\) 考虑设\(f_i\)表示以第\(i\)个数为结尾所能得到的合法子序列的最长长度. 则一个数能从另一个数那里转移,当且仅当这两个数按位与的值不为\(0\). 考虑按位与的值不为\(0\),实际意义就是二进制下存在至少一位上这两个数都是\(1\). 那么,我们可以枚举两个位置,然后枚举二进制下一位判断是否可以转移. 这样就可以轻松得出一个复杂度比暴力还…
C. Industrial Nim time limit per test 2 seconds memory limit per test 64 megabytes input standard input output standard output There are n stone quarries in Petrograd. Each quarry owns mi dumpers (1 ≤ i ≤ n). It is known that the first dumper of the…
Team Formation Time Limit: 3000MS   Memory Limit: 131072KB   64bit IO Format: %lld & %llu Submit Status Description For an upcoming programming contest, Edward, the headmaster of Marjar University, is forming a two-man team from N students of his uni…
1832: 贪吃的松鼠 Time Limit: 3 Sec  Memory Limit: 2 MB Submit: 43  Solved: 7 SubmitStatusWeb Board Description 冬天到了,n只松鼠决定一起采集一波坚果过冬,可是在松鼠老大清点的时候,发现少了一些食物,于是召开松鼠大会,知道是有一只小松鼠偷吃了一部分食物!可是他们只知道每一个松鼠运了m个,但是某一个只松鼠运了k个,请找出这个松鼠!(本题时限3s  限制内存2M) Input 输入有多组数据,每组第一…
原题链接:http://codeforces.com/problemset/problem/878/A 题意:给出n个位运算操作, 化简这些操作, 使化简后的操作次数不多于5步. 思路:我们可以对二进制每一位上的1, 0, 进行讨论, 如果n次操作后1 -->1, 0 --> 1, 说明这一位要用或操作(or 1) 类似的,1 -->0, 0 -->1, 说明这一位要用异或操作(xor 1)        1 -->0, 0 -->0, 说明这一位要用与操作(and 0…