作业1:有一堆硬币,每次只能拿一个或者两个,求最少多少次可以拿完硬币
[10, 8, 5, 3, 27, 99]
def test_1(ls):
countx = 0
for i in ls:
s = i // 2 + i % 2
countx += s
return countx
ls = [10, 8, 5, 3, 27, 99]
count = test_1(ls)
print(f"最少{count}次拿完")
作业2:如果两个素数之差为2,这样的两个素数就叫作"孪生数",找出100以内的所有"孪生数".
def test_2():
ls = []
for num in range(2, 101):
flag = True
for i in range(2, num):
if num % i == 0:
flag = False
if flag:
ls.append(num)
else:
pass
return ls
list = test_2()
print("1~100以内的素数有:")
print(list)
index = 1
while index < len(list):
if list[index] - list[index - 1] == 2:
print("{}和{}是孪生数".format(list[index], list[index - 1]))
index += 1