第十二天(位运算)
今天完成题目:762,1604,784,1731,1725,162,389 762:二进制表示中质数个计算置位
先转换成二进制,而后用字典法判断是否质数
1604:数组中出现次数超过一半的数字
先转换成set,而后遍历
使用count判断符合要求的数字
786:字母大小全排列
n个字母的全排列,则使用使用n位二进制来表示
isalpha()判断字母,upper()大写,lower()小写
map(function,iterable...) 映射函数
itertools.product(*iterables, repeat=1)指定重复几次迭代
>>> from itertools import product as product >>> A = [1, 2, 3] >>> B = [100, 200, 300] >>> for item in product(A, B): ... print(item) ... (1, 100) (1, 200) (1, 300) (2, 100) (2, 200) (2, 300) (3, 100) (3, 200) (3, 300)
1731:主要元素
跟1604类似,只不过多了种可能
1725:消失的数字
return int(len(nums)*(len(nums)+1)/2 - sum(nums))
通过等差数列求和后减去数组中的数字之和
162:多数元素
跟1609一致
389:找不同
先将字符转变成数字ord()
而后求和计算不同的元素
再转变会字母chr()
最后更新于
这有帮助吗?