問題描述
若乙個矩陣中的某元素在其所在行最小而在其所在列最大,則該元素為矩陣的乙個馬鞍點。
請寫乙個程式,找出給定矩陣的馬鞍點。
輸入說明
輸入資料第一行只有兩個整數m和n(0輸出說明
在一行上輸出馬鞍點的行號、列號(行號和列號從0開始計數)及元素的值(用乙個空格分隔),之後換行;
若不存在馬鞍點,則輸出乙個字串「no」後換行。
輸入樣例
4 311 13 121
407 72 88
23 58 1
134 30 62
輸出樣例
1 1 72
#include
intmain()
}for
(h=0
;h)//遍歷同行比較找最小
} l--
; y=x;
//同列比較載體提前裝載x內容
for(h1=
0;h1)//遍歷同列找最大
} h1--;if
(x==y)
//如果最終x,y裝載相同元素,則其為馬鞍點
}printf
("%d %d %d"
,h2,l2,y);}
else}if
(i==m)
//m行都沒有馬鞍點
return0;
}
馬鞍點問題 陣列
如果在一矩陣中元素a i j 滿足a i j 為第i行的最小值,第j行的最大值,則稱這個元素為這個矩陣的馬鞍點,求m n矩陣所有的馬鞍點。若需求乙個矩陣的所有馬鞍點,其實只需將矩陣的每行的最小值與每列的最大值分別求出存在相應的陣列中,在遍歷一遍原矩陣確定元素是否滿足條件即可。include incl...
C語言輸出矩陣馬鞍點
在矩陣中,乙個數在所在行中是最大值,在所在列中是最小值,則被稱為鞍點。下面是輸出矩陣馬鞍點的源 c語言輸出矩陣馬鞍點 include void input matrix int m,int n,int a 100 100 輸入矩陣元素 void output matrix int m,int n,i...
C語言練習 鞍點
以下為題目要求 給定乙個n n矩陣a。矩陣a的鞍點是乙個位置 i,j 在該位置上的元素是第i行上的最大數,第j列上的最小數。乙個矩陣a也可能沒有鞍點。你的任務是找出a的鞍點。輸入格式 輸入的第1行是乙個正整數n,1 n 100 然後有n行,每一行有n個整數,同一行上兩個整數之間有乙個或多個空格。輸出...