#476. NOIP2008TG-28
NOIP2008TG-28
28.(完善程序)
(矩阵中的数字)有一个 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 --;
}
____________________
while (a[i][j] != k)
{
while ( ____________________ && i > 1) i --;
while ( ____________________ && j <= n) j ++;
}
____________________
____________________
}
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;
}
①:{{ input(1) }}
②:{{ input(2) }}
③:{{ input(3) }}
④:{{ input(4) }}
⑤:{{ input(5) }}