#Z01073. 马鞍点

马鞍点

题目描述

如果矩阵中存在这样的一个元素q[i,j]满足条件:q[i,j]是第i行中值最小的元素,且又是第j列中值最大的元素,则称之为该矩阵的一个马鞍点。请编程计算出m*n的矩阵A的所有马鞍点。若是i行为 1 1 3 2 5 中1最小但出现多次,那么我们认为[i,1]和[i,2]都为i行中值最小的元素。列同理。

输入格式

输入包含多个测试用例。每个测试用例都包含两个整数M,N(1<=N,M<=100)。接着是M*N矩阵中的各个元素,每个元素都是int范围内的整数,当N=0,M=0时输入结束,不用处理该测试用例.

输出格式

对于每个矩阵,你要确定有无马鞍点,若是没有请输出“No”,若是有马鞍点请输出这个马鞍点的i 和 j 以及q[i,j]。i 和 j 以及q[i,j]之间分别用一个空格分隔。若是有多个马鞍点按i小先输出的原则,若是i相同按j小先输出的原则。每个马鞍点占一行.当一个M*N的矩阵中的所有马鞍点输出完以后输出一个空行表示这个矩阵输出完毕

3   4 
1   2   3   4
2   3   4   5
3   5   1   5
2   6
1   2   3   9   4  5   
7   6   4   8  6   5
4   5
1   1   5   6  4
3   7   3   2  8
5   6   5   9  10     
4   2   3   4  9
0   0
No

2 3 4

3 1 5
3 3 5