01/10/2018, 15:54
Bài tập ôn tập thi SVMC
Đề bài: Cho một ma trận M x N gồm các số từ 0~200.
In ra số lượng các số lớn nhất trên ma trận theo chiều dọc, ngang. mỗi hàng, cột chỉ được phép tồn tại 1 số.
- Ý tưởng e là 1 số đc chọn chỉ khi nó vừa là max hàng vừa là max cột. Các bác xem giúp chương trình e bị sai đoạn nào với ạ. À bác nào thi SVMC r cho e xin kinh nghiệm về mọi thứ với ạ :v
#include<iostream>
#include<conio.h>
using namespace std;
int a[100][100];
int hang,cot,dem;
int maxhang(int vitri)
{
int max=0;
for(int i=0;i<cot;i++)
{
if(a[vitri][i]>max)
{
max=a[vitri][i];
}
}
return max;
}
int maxcot(int vitri)
{
int max=0;
for(int j=0;j<hang;j++)
{
if(a[vitri][j]>max)
{
max=a[vitri][j];
}
}
return max;
}
int main()
{
//freopen("input.txt","r",stdin);
int testcase,i,j;
cin>>testcase;
for(int t=1;t<=testcase;t++)
{
cin>>hang;
cin>>cot;
for(i=0;i<hang;i++)
{
for(j=0;j<cot;j++)
{
cin>>a[i][j];
}
}
/*for(i=0;i<hang;i++)
{
for(j=0;j<cot;j++)
{
cout<<a[i][j]<<" ";
}
cout<<endl;
}*/
for(i=0;i<hang;i++)
{
for(j=0;j<cot;j++)
{
dem=0;
int maxH=maxhang(i);
int maxC=maxcot(j);
if(a[i][j]==maxH&&a[i][j]==maxC)
{
dem++;
}
}
}
}
cout<<dem;
return 0;
}
Bài liên quan
Đừng đặt tên biến là max…
ok đc r e cám ơn bác ạ.
Cho xin link bài tập bro ơi : )))