位运算
文章平均质量分 82
wyg1997
恰如猛虎卧荒丘,潜伏爪牙忍受。
展开
-
【Leetcode】26.只出现一次的数字III(位运算)
题目链接 点击打开链接 题目描述 题解 两个位运算 异或: 两个相同的数异或结果为0;0和任意值异或结果为那个数。 x&(-x): 结果为x的二进制位的最后一位。 举个例子(第一位为符号位): 10 -> (0 00000…000 1010)b -10 -> (1 11111…111 0110)b 负数的二进制变换方式是:1. 按位取反。 2. 末位加1。 这时两个数进行...原创 2020-04-15 11:53:15 · 481 阅读 · 0 评论 -
【Leetcode】137.只出现一次的数字(逻辑运算推导)
题目链接 点击打开链接 题目描述 解题思路 首先我们分析一下题意,一个数组中只有一个数出现了1次,其余的数都出现了3次。并且要求O(n)O(n)O(n)的时间复杂度和O(1)O(1)O(1)的空间复杂度。也就是不能用线性表、HashSet、HashMap这些数据结构了。 解法一 这题还是从二进制位来考虑,分以下2种情况: 如果这个二进制位出现了3n次1(3次、6次、9次等),那么就说明结果在这...原创 2020-03-06 11:55:44 · 426 阅读 · 1 评论 -
【zzuliOJ】1922 - 棋子问题(bfs & 位运算)
点击打开题目 1922: 棋子问题 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 59 Solved: 10 SubmitStatusWeb Board Description 给定一个4*4的01棋盘,1代表棋子,0代表空格,棋子1每次可以移动到相邻上下左右四个位置的空格。 然后再给定你目标棋盘,问你最少在原创 2016-08-18 12:10:19 · 552 阅读 · 0 评论 -
【zzuliOJ】1921 - 晴天的序列(dp)
点击打开题目 1921: 晴天的序列 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 216 Solved: 17 SubmitStatusWeb Board Description 给定一个长度为n的数字序列a,从中选取一个长为m的子序列b满足 b[i]&b[i-1]!=0 (2 求最大的m。 Inpu原创 2016-08-18 10:34:11 · 396 阅读 · 0 评论 -
【HDU】5747 - Aaronson(位运算 & 贪心)
点击打开题目 Aaronson Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) Total Submission(s): 723 Accepted Submission(s): 400 Problem Description Rec原创 2016-08-05 15:54:43 · 449 阅读 · 0 评论 -
【zzuliOJ】1893 - 985的数学难题(位运算)
点击打开题目 1893: 985的数学难题 Time Limit: 2 Sec Memory Limit: 128 MB Submit: 85 Solved: 13 SubmitStatusWeb Board Description 985有n个正整数,他想快速知道下面函数的返回值 int a[N+1]; long long Solve() {原创 2016-08-03 19:48:30 · 552 阅读 · 0 评论 -
【HDU】3279 - Fliptile(bfs & 二进制)
点击打开题目 Fliptile Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 7440 Accepted: 2797 Description Farmer John knows that an intellectually satisfied原创 2016-07-30 10:09:29 · 402 阅读 · 0 评论 -
【周练2016.3.7】B - Lucky Numbers(位运算,水)
B - Lucky Numbers Time Limit:500MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64u Description The numbers of all offices in the new building of the Tax Office of IT City will have lucky原创 2016-03-07 17:14:17 · 661 阅读 · 0 评论 -
【哈工大oj】1037 - 组合数末尾的零(位运算,好题)
组合数末尾的零 Time Limit: 1000 MS Memory Limit: 65536 K Total Submit: 326(169 users) Total Accepted: 207(146 users) Rating: Special Judge: No Description 从原创 2016-01-15 14:48:50 · 994 阅读 · 0 评论 -
【杭电oj】1196 - Lowest Bit(位运算)
Lowest Bit Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 10324 Accepted Submission(s): 7564 Problem Description Given an posit原创 2016-01-08 21:06:06 · 429 阅读 · 0 评论 -
多少个1?(位运算)
此题用位运算比较节省时间,代码如下: #include int main(){ int n, cnt; cnt = 0; scanf("%d", &n); while (n) { cnt += (n & 1); n >>= 1; } printf("%d\n", cnt); }转载 2015-12-11 23:52:38 · 777 阅读 · 0 评论