python练习集100题(21-40)
a=[ for row in range(9)] #创建二维列表def gamecal(k,n): #处理编号k开始的n个球队
if n==2:
a=k #参赛球队编号
a=k+1 #对阵球队编号
a=k+1#参赛球队编号
a=k #对阵球队编号
else:
gamecal(k,n//2)
gamecal(k+n//2,n//2)
for i in range(k,k+n//2):
for j in range(n//2+1,n+1):
a=a
for i in range(k+n//2,k+n):
for j in range(n//2+1,n+1):
a=a
j=2
m=int(input('参赛球队数:'))
for i in range(2,9):
j=j*2
if j==m :
break
if i>=8:
print('参赛对数必须为2的整数次幂,并且不超过64')
gamecal(1,m)
print('编号',end=' ')
for i in range(2,m+1):
if i==m:
print('%2d天' %(i-1))
else:
print('%2d天' %(i-1),end=' ')
for i in range(1,m+1):
for j in range(1,m+1):
if j==m:
print('%4d' %a,end=' ')
else:
print('%4d' %a,end=' ')
print(end='\n')
参赛球队数:8
编号1天2天3天4天5天6天7天
1 2 3 4 5 6 7 8
2 1 4 3 6 5 8 7
3 4 1 2 7 8 5 6
4 3 2 1 8 7 6 5
5 6 7 8 1 2 3 4
6 5 8 7 2 1 4 3
7 8 5 6 3 4 1 2
8 7 6 5 4 3 2 1
页:
[1]