n<m时的最小值

在使用for循环需要先想清楚条件是放在前面还是后面,不然会出现结果多一点或少一点

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 题目描述:输入一个n×m的整数矩阵(n<=10, m<=10),然后输出其中的最大值、最小值和它们的坐标。 输入格式:输入矩阵的行数n和列数m(n<=10, m<=10),然后输入所有的矩阵元素。 输出格式:输出最大值、最小值和它们的坐标。 ### 回答2: 这道题目可以用一个双重循环对整个矩阵进行遍历,找到其中的最大值和最小值,同记录它们的下标。具体实现方法如下: 1. 首先输入矩阵的行数n和列数m,以及所有矩阵中的数据,存储到一个二维数组matrix中。 2. 定义两个变量maxValue和minValue初始化为矩阵中的第一个元素,以及两个变量max_i、max_j、min_i、min_j用于记录最大值和最小值的下标,初始化为(0,0)。 3. 双重循环遍历整个矩阵,从matrix[0][0]开始,逐个比较每个元素和当前的最大值和最小值,如果找到了比当前最大值还大的元素,就更新maxValue和max_i、max_j的值,同理,如果找到了比当前最小值还小的元素,就更新minValue和min_i、min_j的值。 4. 遍历完成后,就可以得到最大值、最小值和它们的下标,然后按照题目要求输出即可。 代码如下所示: ```python n, m = map(int, input().split()) matrix = [] for i in range(n): row = list(map(int, input().split())) matrix.append(row) maxValue, minValue = matrix[0][0], matrix[0][0] max_i, max_j, min_i, min_j = 0, 0, 0, 0 for i in range(n): for j in range(m): if matrix[i][j] > maxValue: maxValue = matrix[i][j] max_i, max_j = i, j if matrix[i][j] < minValue: minValue = matrix[i][j] min_i, min_j = i, j print("最大值为:{},下标为:({}, {})".format(maxValue, max_i, max_j)) print("最小值为:{},下标为:({}, {})".format(minValue, min_i, min_j)) ``` 输入样例: ``` 3 4 1 2 3 4 -1 5 6 0 7 8 -3 9 ``` 输出样例: ``` 最大值为:9,下标为:(2, 3) 最小值为:-3,下标为:(2, 2) ``` ### 回答3: 题目描述: 输入一个 $n \times m$ 的整数矩阵($n\leqslant 10, m \leqslant 10$),然后输出其中的最大值、最小值,并输出这两个值的下标。 输入格式: 输入矩阵的行数 $n$ 和列数 $m$,然后输入所有矩阵中的数据。 解题思路: 这道题其实就是一道简单的数组模拟题目,我们只需要定义一个二维数组,然后将数据全部存起来。接着再分别求出最大值和最小值,同记录下它们的行和列下标即可。 需要注意的是,在代码实现的候,下标从 $0$ 开始。 AC代码:

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值