贪心理解题
1.在N行M列的正整数矩阵中,要求从每行中选出1个数,
使得选出的总共N个数的和最大。
输入:
第一行两个正整数N和M,用空格隔开,表示行数和列数
第2行到第N+1行,每行M个用空格隔开的整数 ,表示矩阵
输出 最大总和
分析:求最大总和,可以分解成每一行取最大的数,这样N行下来总和一定是最大的
代码
#include<iostream>
using namespace std;
int main()
{
int N,M,maxn,t,sum=0;
scanf("%d%d",&N,&M);
for(int i=0;i<N;i++)
{
scanf("%d",&maxn);
for(int j=1;j<M;j++)
{
scanf("%d",&t);
if(t>maxn)
maxn=t;
}
sum+=maxn;
}
printf("%d\n",sum);
return 0;
}