赞
踩
第一题:
给n个数组,计算每个数组里面的元素有多少个1,相同1次数为一类,计算每个数组有几类。
思路:减1做&运算。注意将答案放在数组里面分别打印,否则报错。
- #coding=utf-8
- # 本题为考试多行输入输出规范示例,无需提交,不计分。
- import sys
- def count_one(nums):
- res = []
- for num in nums:
- count = 0
- if num < 0:
- num = num & 0xffffffff
- while num:
- num = (num - 1) & num
- count += 1
- res.append(count)
- return len(set(res))
-
- if __name__ == "__main__":
- # 读取第一行的n
- g = int(sys.stdin.readline().strip())
- ans = []
- # 例子个数
- for i in range(g):
- n = int(sys.stdin.readline().strip())
- line = sys.stdin.readline().strip()
- line = list(map(int, line.split()))
- ans.append(count_one(line))
- for i in ans:
- print(i)
第二题:
游泳池,一个进水管和一个排水管,分别每
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。