1.查找输入整数二进制中1的个数
描述:输入一个正整数,计算它在二进制下的1的个数。
注意多组输入输出!!!!!!
输入描述:输入一个整数
输出描述:计算整数二进制中1的个数
示例1:
输入:5
输出:2
说明:5的二进制表示是101,有2个1
参考代码:
import sys
for line in sys.stdin:
a = line.split()[0]
print(list(bin(int(a))).count('1'))
2. 计算日期到天数zhuanhuan
描述:根据输入的日期,计算是这一年的第几天。
保证年份为4位数且日期合法。
输入描述:输入一行,每行空格分割,分别是年,月,日
输出描述:输出是这一年的第几天
示例1:
输入:2012 12 31
输出:366
示例2:
输入:1982 3 4
输出:63
参考代码:
import sys
for line in sys.stdin:
year,month,day = line.split()
total = 0
for m in range(1,int(month)):
if int(m) in [1,3,5,7,8,10,12]:
total += 31
elif int(m) in [4,6,9,11]:
total += 30
if int(m) == 2:
if int(year) % 4 == 0 and (int(year) % 100 != 0 or int(year) % 400 == 0):
total += 29
else:
total += 28
total += int(day)
print(total)
3. 整型数组合并
描述:
题目标题:
将两个整型数组按照升序合并,并且过滤掉重复数组元素。
输出时相邻两数之间没有空格。
输入描述:
输入说明,按下列顺序输入:
1 输入第一个数组的个数
2 输入第一个数组的数值
3 输入第二个数组的个数
4 输入第二个数组的数值
输出描述:
输出合并之后的数组
示例1:
输入:
3
1 2 5
4
-1 0 3 2
输出:
-101235
参考代码:
import sys
tmp = []
for line in sys.stdin:
a = line.split()
tmp.append(a)
t = list(set(tmp[1] + tmp[3]))
t = [ int(_) for _ in t]
t.sort()
t = [str(_) for _ in t]
print(''.join(t))