(矩阵中的数字)有一个n*n(1<=n<=5000)的矩阵a, 对于1<=i < n,1<=j<=n, a[i,j] < a[i + 1,j] a[j,i] < a[j,i+1]。即矩阵中左右相邻的两个元素,右边的元素一定比左边的大。上下相邻的两个元素,下面的元素一定比上面的大。给定矩阵a中的一个数字k,找出k所在的行列(注意:输入数据保证矩阵中的数各不相同)。
#include <stdio.h>
int n, k, answerx, answery;
int a[5001][5001];
void FindKPosition( ) {
int i = n, j = n;
while (j > 0) {
if (a[n][j] < k) break;
j--;
}
1
while (a[i][j] != k) {
while (2 && i > 1) i--;
while (3 && j <= n) j++;
}
4
5
}
int main( ) {
int i, j;
scanf("%d", &n);
for (i = 1; i <= n; i++)
for (j = 1; j <= n; j++)
scanf("%d", &a[i][j]);
scanf("%d", &k);
FindKPosition( );
printf("%d %d\n", answerx, answery);
return 0;
} 