saddle point (鞍點)在微分方程中,沿著某一方向是穩定的,另一方向是不穩定的奇點。在泛函中,既不是極大值點也不是極小值點的臨界點。在矩陣中,乙個數在所在行中是最大值,在所在列中是最小值。在物理上要廣泛一些,指在乙個方向是極大值,另乙個方向是極小值的點。
題目內容:
給定乙個n*n矩陣a。矩陣a的鞍點是乙個位置(i,j),在該位置上的元素是第i行上的最大數,第j列上的最小數。乙個矩陣a也可能沒有鞍點。
你的任務是找出a的鞍點。
輸入格式:
輸入的第1行是乙個正整數n, (1<=n<=100),然後有n行,每一行有n個整數,同一行上兩個整數之間有乙個或多個空格。
輸出格式:
對輸入的矩陣,如果找到鞍點,就輸出其下標。下標為兩個數字,第乙個數字是行號,第二個數字是列號,均從0開始計數。
如果找不到,就輸出
no題目所給的資料保證了不會出現多個鞍點。
輸入樣例:
4 1 7 4 1
4 8 3 6
1 6 1 2
0 7 8 9
輸出樣例:
2 1
時間限制:500ms記憶體限制:32000kb
#include
#include
int main()
}aim=a[0][0];//aim初始化
for(i=0;ia[l][k])//判斷是否為列最小值 ,不是的話跳轉到下一行並初始化
flag++;//若是最小值,則標記+1
}if(flag==n)//標記為n,說明是第i行最大,第k行最小,記錄行數row,跳出迴圈
}if(flag==n) printf("%d %d",row,k);
else printf("no");
return 0;
}
馬鞍點問題 陣列
如果在一矩陣中元素a i j 滿足a i j 為第i行的最小值,第j行的最大值,則稱這個元素為這個矩陣的馬鞍點,求m n矩陣所有的馬鞍點。若需求乙個矩陣的所有馬鞍點,其實只需將矩陣的每行的最小值與每列的最大值分別求出存在相應的陣列中,在遍歷一遍原矩陣確定元素是否滿足條件即可。include incl...
鞍點的查詢 已知陣列
問題 一行上最大的點,一列上最小的點 首先 陣列中找最大點 打擂台演算法 1.現在一行上打擂台找出最大,再在最大的列上打擂台找出最小 得找個變數記錄擂主的位置 2.首位擂主的初始化問題 在比武之前 bug1 同時給首擂主定位置,不然沒有更換擂主則擂主無座標 3.第一場打完了緊接著打第二場 4.判斷兩...
二維陣列求鞍點
題目內容 給定乙個n n矩陣a。矩陣a的鞍點是乙個位置 i,j 在該位置上的元素是第i行上的最大數,第j列上的最小數。乙個矩陣a也可能沒有鞍點。你的任務是找出a的鞍點。輸入格式 輸入的第1行是乙個正整數n,1 n 100 然後有n行,每一行有n個整數,同一行上兩個整數之間有乙個或多個空格。輸出格式 ...