早教吧作业答案频道 -->其他-->
寻找矩阵的鞍点输入:第一行为矩阵的行数和列数,从第二行开始,为矩阵本身(假设输入的矩阵只有0和1个鞍点)34135323413267输出:Point:a[1][2]==4(下标从0开始)#includeintmain(){intn,m,a[50
题目详情
寻找矩阵的鞍点
输入:第一行为矩阵的行数和列数,从第二行开始,为矩阵本身(假设输入的矩阵只有0和1个鞍点)
3 4
1 3 5 3
2 3 4 1
3 2 6 7
输出:
Point:a[1][2] == 4 (下标从0开始)
# include
int main()
{
int n,m,a[50][50],i,j,k = 0,t = 0,p = 0,q = 0;
scanf("%d %d",&n,&m);
for(i = 0;i < n;i++)
{
for(j = 0;j < m;j++)
scanf("%d",&a[i][j]);
}
for(i = 0;i < n;i++)
{
for(j = 0;j < m;j++)
{
if(a[i][j] > k)
{
k = a[i][j];
p = i;
t = j;
}
}
for(i = 0;i < n;i++)
{
if(a[i][t] < k)
break;
}
if(i == n)
{
q++;
printf("Point:a[%d][%d]==%d\n",p,t,k);
}
}
if(q == 0)
printf("No Point\n");
return 0;
}
为什么输出无结果?
输入:第一行为矩阵的行数和列数,从第二行开始,为矩阵本身(假设输入的矩阵只有0和1个鞍点)
3 4
1 3 5 3
2 3 4 1
3 2 6 7
输出:
Point:a[1][2] == 4 (下标从0开始)
# include
int main()
{
int n,m,a[50][50],i,j,k = 0,t = 0,p = 0,q = 0;
scanf("%d %d",&n,&m);
for(i = 0;i < n;i++)
{
for(j = 0;j < m;j++)
scanf("%d",&a[i][j]);
}
for(i = 0;i < n;i++)
{
for(j = 0;j < m;j++)
{
if(a[i][j] > k)
{
k = a[i][j];
p = i;
t = j;
}
}
for(i = 0;i < n;i++)
{
if(a[i][t] < k)
break;
}
if(i == n)
{
q++;
printf("Point:a[%d][%d]==%d\n",p,t,k);
}
}
if(q == 0)
printf("No Point\n");
return 0;
}
为什么输出无结果?
▼优质解答
答案和解析
using namespace std;
int s1[50][50]={0},x,y,a,b,n=0,m;//s1记录矩阵,x y记录矩阵大小,a b为循环变量,m记录选定的点
bool o;//判断使用
int main()
{
cin>>x>>y;//读入xy
for(a=1;a<=x;a++)
for(b=1;b<=y;b++) cin>>s1[a][b];//读入矩阵
for(a=1;a<=x;a++)//循环列
{
o=true;
for(b=1;b<=y;b++)//从当前行中选出最大的数
{
if((n==0)||(s1[a][b]>n)) {n=s1[a][b];m=b;}//选出最大数
}
for(b=1;b<=x;b++)//从选定的数中,判断这个数在列中是否最小
{
if(n>s1[b][m]) {o=false;n=0;break;}如果不是最小则o=false,选定数n归0,跳出循环,重新选数
}
if(o) cout<}
}
表示我看不懂你的代码,不过你可以参考一下我的代码
#includeusing namespace std;
int s1[50][50]={0},x,y,a,b,n=0,m;//s1记录矩阵,x y记录矩阵大小,a b为循环变量,m记录选定的点
bool o;//判断使用
int main()
{
cin>>x>>y;//读入xy
for(a=1;a<=x;a++)
for(b=1;b<=y;b++) cin>>s1[a][b];//读入矩阵
for(a=1;a<=x;a++)//循环列
{
o=true;
for(b=1;b<=y;b++)//从当前行中选出最大的数
{
if((n==0)||(s1[a][b]>n)) {n=s1[a][b];m=b;}//选出最大数
}
for(b=1;b<=x;b++)//从选定的数中,判断这个数在列中是否最小
{
if(n>s1[b][m]) {o=false;n=0;break;}如果不是最小则o=false,选定数n归0,跳出循环,重新选数
}
if(o) cout<
}
看了寻找矩阵的鞍点输入:第一行为矩...的网友还看了以下:
乘坐火车时,随同成人旅行的身高1.1~1.3米的儿童享受半价客票、加快客票和空调票,简称为 2020-05-19 …
乘坐火车时,随同成人旅行的身高1.1~1.4米的儿童享受半价客票、加快客票和空调票,简称为 2020-05-19 …
乘坐火车时,随同成人旅行的身高1.1~1.3米的儿童享受半价客票、加快客票和空调票,简称为儿童票;超 2020-05-20 …
乘坐火车时,随同成人旅行的身高1.1~1.4米的儿童享受半价客票、加快客票和空调票,简称为儿童票;超 2020-05-20 …
有一个高为1.1米的正方体水池刚好能装满28桶水,已知水桶是一个圆柱体,...有一个高为1.1米的 2020-05-20 …
一、我们知道1/1×2=1/1-1/2=1/2,1/2×3=1/2-1/3=1/6验证:1/3×4 2020-07-17 …
直角三角形1:1:根号2请问各路高手:直角三角形三个角分别为30°60°90°我想问的是:1:1: 2020-07-22 …
寻找规律解数学题1/1*2=1-1/22/2*3=1/2-1/31/3*4=1/3-1/4……计算 2020-07-22 …
小东的身高是1米53厘米,小亮的身高是16分米,小云的身高是155厘米,小燕的身高是1.58米,请 2020-08-01 …
由下列各式:1>1/2,1+1/2+1/3>1有下列各式:1>1/2;1+1/2+1/3>1;1+1 2020-10-30 …