九度oj 1191
2015-08-31 20:39
246 查看
题目1191:矩阵最大值
时间限制:1 秒
内存限制:32 兆
特殊判题:否
提交:2310
解决:1158
题目描述:
编写一个程序输入一个mXn的矩阵存储并输出,并且求出每行的最大值和每行的总和。
要求把每行总和放入每行最大值的位置,如果有多个最大值,取下标值最小的那一个作为最大值。
最后将结果矩阵输出。
输入:
输入的第一行包括两个整数m和n(1<=m,n<=100),分别代表矩阵的行和列的维数。
接下来的m行每行有n个数,代表矩阵的元素。
输出:
可能有多组测试数据,对于每组数据,输出按题目要求执行后的矩阵。
样例输入:
样例输出:
来源:2007年华中科技大学计算机研究生机试真题
时间限制:1 秒
内存限制:32 兆
特殊判题:否
提交:2310
解决:1158
题目描述:
编写一个程序输入一个mXn的矩阵存储并输出,并且求出每行的最大值和每行的总和。
要求把每行总和放入每行最大值的位置,如果有多个最大值,取下标值最小的那一个作为最大值。
最后将结果矩阵输出。
输入:
输入的第一行包括两个整数m和n(1<=m,n<=100),分别代表矩阵的行和列的维数。
接下来的m行每行有n个数,代表矩阵的元素。
输出:
可能有多组测试数据,对于每组数据,输出按题目要求执行后的矩阵。
样例输入:
3 3 1 1 1 1 1 1 1 1 1 3 3 3 2 3 2 3 2 3 2 3
样例输出:
3 1 1 3 1 1 3 1 1 8 2 3 2 7 2 8 2 3
来源:2007年华中科技大学计算机研究生机试真题
#include<iostream> using namespace std; int main() { int m,n; int a[101][101]; while(cin>>m>>n) { for(int i=1;i<=m;i++) { for(int j=1;j<=n;j++) { cin>>a[i][j]; } } int p,q;int sum=0; for(int i=1;i<=m;i++) { int max=-99999; for(int j=1;j<=n;j++) { sum+=a[i][j]; if(a[i][j]>max) { max=a[i][j]; p=i; q=j; } } a[p][q]=sum; sum=0; } for(int i=1;i<=m;i++) { for(int j=1;j<n;j++) { cout<<a[i][j]<<" "; } cout<<a[i] <<endl; } } }
相关文章推荐
- PHP大数据加法
- SOC电源[1] soc 处理的电源管理系统设计
- django base (1)
- 笔试题:求二叉树中和值为sum的所有路径
- courier new
- 工作小结—软硬能力
- 惠普初体验
- java单例的几种实现方法
- 【Splay】 HDU 1754 I Hate It
- LVM2详解
- 高精度计算:最大公约数【两个数字字符串】
- MySQL基本操作(三):字符集
- HDU 3008 Warcraft,动态规划,滚动数组
- 运算符/printf/scanf/if
- 设计堆栈类
- 优先队列
- Vysor 情怀玩法 (番外篇)--调戏妹子
- 语言学习目标
- JAVA中转义字符
- (4.2.16.4) ActivityManager