文章目录
1107 老鼠爱大米
翁恺老师曾经设计过一款 Java 挑战游戏,叫"老鼠爱大米"(或许因为他的外号叫"胖胖鼠")。每个玩家用 Java代码控制一只鼠,目标是抢吃尽可能多的大米让自己变成胖胖鼠,最胖的那只就是冠军。
因为游戏时间不能太长,我们把玩家分成 N 组,每组 M 只老鼠同场竞技,然后从 N个分组冠军中直接选出最胖的冠军胖胖鼠。现在就请你写个程序来得到冠军的体重。
输入格式
输入在第一行中给出 2 个正整数:N(≤100)为组数,M(≤10)为每组玩家个数。随后 N 行,每行给出一组玩家控制的 M只老鼠最后的体重,均为不超过 10 的4次方的非负整数。数字间以空格分隔。
输出格式
首先在第一行顺次输出各组冠军的体重,数字间以 1 个空格分隔,行首尾不得有多余空格。随后在第二行输出冠军胖胖鼠的体重。
输入样例
c
3 5
62 53 88 72 81
12 31 9 0 2
91 42 39 6 48
输出样例
c
88 31 91
91
代码示例
c
#include <stdio.h>
#include <math.h>
#include <string.h>
#include <stdlib.h>
#include <stdbool.h>
// 主函数,程序的入口点
int main() {
// 定义两个整数变量 n 和 m,分别用于存储行数和列数
int n,m;
// 从标准输入读取两个整数,分别赋值给 n 和 m
scanf("%d %d",&n,&m);
// 定义变量 max 用于存储所有行中的最大值,初始化为 -1
int max = -1;
// 外层循环,遍历每一行
for(int i=0; i<n; i++) {
// 定义变量 max1 用于存储当前行中的最大值,初始化为 -1
int max1 = -1;
// 内层循环,遍历当前行的每一列
for(int j=0; j<m; j++) {
// 定义变量 a 用于临时存储当前输入的整数
int a;
// 从标准输入读取一个整数,赋值给 a
scanf("%d",&a);
// 如果当前输入的整数 a 大于当前行的最大值 max1
if(a>max1) {
// 则更新当前行的最大值 max1 为 a
max1 = a;
}
}
// 如果是第一行
if(i==0) {
// 直接输出当前行的最大值
printf("%d",max1);
} else {
// 否则,在输出前先输出一个空格,再输出当前行的最大值
printf(" %d",max1);
}
// 如果当前行的最大值 max1 大于所有行的最大值 max
if(max1>max){
// 则更新所有行的最大值 max 为 max1
max = max1;
}
}
// 输出换行符
printf("\n");
// 输出所有行中的最大值
printf("%d",max);
// 程序正常结束,返回 0
return 0;
}