二维数组操作(华为机试练习)

这是一个关于二维数组操作的问题,涉及到华为机试练习。题目要求编写程序处理数据表的五种操作:初始化、交换元素、增加行、增加列和查找元素,并在操作中确保不超出9x9的规格。对于非法操作,如超出尺寸或坐标范围,程序应返回错误。同时,要注意插入操作后数据表的大小恢复及超出部分的处理。
摘要由CSDN通过智能技术生成

题目描述

有一个大小的数据表,你会依次进行以下5种操作:
1.输入和,初始化大小的表格。
2.输入x_1x 1 、y_1y 1、x_2x 2 、y_2y 2,交换坐标在(x_1,y_1)(x 1 ,y 1 )和(x_2,y_2)(x 2,y 2)的两个数。
3.输入,在第行上方添加一行。
4.输入,在第列左边添加一列。
5.输入、,查找坐标为的单元格的值。
请编写程序,判断对表格的各种操作是否合法。

详细要求:

1.数据表的最大规格为9行*9列,对表格进行操作时遇到超出规格应该返回错误。
2.对于插入操作,如果插入后行数或列数超过9了则应返回错误。如果插入成功了则将数据表恢复至初始化的大小,多出的数据则应舍弃。
3.所有输入坐标操作,对大小的表格,行号坐标只允许0m-1,列号坐标只允许0n-1。超出范围应该返回错误。

本题含有多组样例输入!

代码

while True:
    try:
        m,n = map(int,input().split())
        if m > 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值