试题 算法训练 球员安排
没有思路,直接找特殊情况测试答案,0有两个,4有1个,再算一个全1
引入枚举算法,目前还不是特别看懂。加的flag是因为全1情况会超时,而这个情况可以手算出来,所以固定输出。再练练枚举,焯
player = []
for i in range(11):
player.append(input())
ans = [0]*4
flag = 0
for i in player:
if i == '1111':
pass
else:
flag = 1
break
if flag == 0:
print(46200)
def dfs(step):
#print(ans)
if step == 11:
if ans[0] == 1 and ans[1] == 4 and ans[2] == 3 and ans[3] == 3:
global count
count += 1
return # 递归出口
for i in range(4):
if player[step][i] == '1':
ans[i] += 1
dfs(step + 1)
ans[i] -= 1
count = 0
if flag:
dfs(0)
print(count)
试题 算法训练 欧拉的鸡蛋
这题难度和上题差距太大,这题又过于简单了
n = 150
for i in range(1,n):
A_num = i
B_num = 150 - i
A_price = 32/(150-i)
B_price = 24.5/(i)
if A_num*A_price == B_num*B_price:
print(i)
print(150-i)