#include <iostream>
#include <cmath>
using namespace std;
/*
Input
输入数据有多组,每组的第一行是两个整数m和n,表示应聘MM的总共的行列数,然后是m行整数,每行有n个,m和n的定义见题目的描述。
Output
对于每组输入数据,输出三个整数x,y和s,分别表示选中的MM的行号、列号和分数。
note:行号和列号从一开始,如果有多个MM的分数绝对值一样,那么输出排在最前面的一个(即行号最小的那个,如果行号相同则取列号最小的那个)。
Sample Input
2 3
1 4 -3
-7 3 0
Sample Output
2 1 -7
*/
int a[1000][1000]; //定义一个数组a,存放1000行,1000列
int main() {
int m, n; //定义m和n存放,行号 和 列号
while (cin>>m>>n) //定义while循环输入m(行号)和n(列号)
{
int max = -1, r, c; //定义max并初始化为-1,r 和 c 存放,行号 和 列号
for (int i = 0; i < m; i++) //定义一个for循环,初始化i=0,当i小于m(行号)时,i自加一
{
for (int j = 0; j < n; j++) //定义一个for循环,初始化j=0,当i小于n(列号)时,j自加一
{
cin >> a[i][j]; //cin输出数组a的[行号][列号]
}
}
for (int i = 0; i < m; i++) //定义一个for循环,初始化i=0,当i小于m(行号)时,i自加一
{
for (int j = 0; j < n; j++) //定义一个for循环,初始化j=0,当i小于n(列号)时,j自加一
{
int x = abs(a[i][j]); //定义一个x 通过abs获取数组a里的数值的“绝对值”,“绝对值”的意思是“正数”不为负数!!
if (x > max) //循环判断 x 是否大于max,此时的x为数组a里的数值(绝对值)
{
max = x; //如果x大于max时,则讲 x 赋值给 max
r = i; //如果x大于max时,则讲 i 赋值给 r(行号)
c = j; //如果x大于max时,则讲 j 赋值给 c(列号)
}
}
}
//最后输出行号(r+1)列号(c + 1),和数组a[r][c]的值。 “因为数组是从0开始的,所有输出+1才是真正的行号列号”
cout << (r + 1) << " " << (c + 1) << " " << a[r][c] << endl;
}
return 0;
}
7-习题-3.海选女主角
来自
标签:
发表回复