设为首页 加入收藏

TOP

问题一百四十:鞍点
2014-11-23 22:13:06 来源: 作者: 【 】 浏览:1
Tags:问题 一百四十 :鞍点

Description


找出具有m行n列二维数组Array的“鞍点”,即该位置上的元素在该行上最大,在该列上最小,其中1<=m,n<=10。


Input


输入数据有多行,第一行有两个数m和n,下面有m行,每行有n个数。


Output


按下列格式输出鞍点:


Array[i][j]=x


其中x代表鞍点,i和j为鞍点所在的数组行和列下标,我们规定数组下标从0开始。


一个二维数组并不一定存在鞍点,此时请输出None


我们保证不会出现两个鞍点的情况,比如:


3 3
1 2 3
1 2 3
3 6 8


Sample Input


3 3
1 2 3
4 5 6
7 8 9


Sample Output


Array[0][2]=3


[plain] #include

int main()
{
int i;
int j;
int l;
int x;
int y;
int k;
int n;
int m;
int flag;
int num[10][10];

while(scanf("%d %d", &n, &m)!=EOF)
{
for(i=0; i {
for(j=0; j {
scanf("%d", &num[i][j]);
}
}

flag=0;
x=0;
y=0;
for(i=0; i {

for(j=0; j {
if(j==0)
{
k=num[i][j];
}

if(k {
k=num[i][j];
x=i;
y=j;
}
}

for(l=0; l {
if(k<=num[l][y])
{
flag=1;
}
else
{
flag=0;
break;
}
}

if(flag)
{
printf("Array[%d][%d]=%d\n", x, y, k);
break;
}
}

if(flag==0)
{
printf("None\n");
}
}

return 0;
}

#include

int main()
{
int i;
int j;
int l;
int x;
int y;
int k;
int n;
int m;
int flag;
int num[10][10];

while(scanf("%d %d", &n, &m)!=EOF)
{
for(i=0; i {
for(j=0; j {
scanf("%d", &num[i][j]);
}
}

flag=0;
x=0;
y=0;
for(i=0; i {

for(j=0; j {
if(j==0)
{
k=num[i][j];
}

if(k {
k=num[i][j];
x=i;
y=j;
}
}

for(l=0; l {
if(k<=num[l][y])
{
flag=1;
}
else
{
flag=0;
break;
}
}

if(flag)
{
printf("Array[%d][%d]=%d\n", x, y, k);
break;
}
}

if(flag==0)
{
printf("None\n");
}
}

return 0;
}

\

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇问题一百四十一:进制转换 下一篇问题一百四十三:寒冰王座

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: