CCF Python题解(100分)201604-2 俄罗斯方块
2018-11-13 15:53
344 查看
data = [] new = [] for i in range(15): data.append(list(map(int, input().split()))) for i in range(4): new.append(list(map(int, input().split()))) dcol = int(input()) def getpoint(lindex, sindex): for lrow in range(lindex, 15): # 大行 for srow in range(sindex, -1, -1): # 小行 for lcol in range(dcol - 1, dcol + 3): # 大列 if (new[srow][lcol - dcol + 1] and data[lrow][lcol]) or lrow == 14: return lrow, srow for i in range(3, -1, -1): if new[i] != [0] * 4: sindex = i break for k in range(14, -1, -1): if data[k] != [0] * 10: lindex = k lrow = getpoint(lindex, sindex)[0] srow = getpoint(lindex, sindex)[1] if lrow == 14: lrow = 15 maxrow = srow + 1 else: maxrow = 4 for row in range(maxrow): for col in range(4): data[row + lrow - srow - 1][col + dcol - 1] += new[row][col] for i in range(15): for j in range(10): print(data[i][j], end=" ") print()阅读更多
相关文章推荐
- CCF Python题解(100分)201604-1 折点计数
- python ccf题解 201604-2 俄罗斯方块
- CCF Python题解(100分)201509-2 日期计算
- CCF Python题解(100分)201503-2 数字排序
- CCF Python题解(100分)201412-2 Z字形扫描
- CCF Python题解(100分)201509-1 数列分段
- CCF Python题解(100分)201409-2 画图
- CCF Python题解(100分)201503-1 图像旋转
- CCF Python题解(100分)201403-2 窗口
- CCF Python题解(100分)201512-1 数位之和
- CCF Python题解(100分)201312-2 ISBN号码
- 【CCF CSP】 201604-2 俄罗斯方块(100分)
- CCF Python题解(100分)201803-1 跳一跳
- CCF Python题解(100分)201412-1 门禁系统
- CCF Python题解(100分)201712-1 最小差值
- CCF Python题解(100分)201409-1 相邻数对
- CCF Python题解(100分)201512-2 消除类游戏
- CCF Python题解(100分)201709-1 打酱油
- CCF Python题解(100分)201403-1 相反数
- CCF Python题解(100分)201703-1 分蛋糕