La segunda pregunta de las semifinales del grupo popular PASCAL NOIP1996.
var i, j, k, l, m, n, x, y, I 1: entero largo
a: matriz
a:= a;
a:= t;
I:= I+1;
j:= j-1;
fin;
hasta i>j;
si i<r entonces qsort(i,r);
si i<j entonces qsort( l, j); /p>
Fin;
Inicio
readln(n, I, j
Para x:=1 a n hacer
write ('(', I, ', ', x, ')'); {posición de la cuadrícula en la misma línea}
writeln
Para y: =1 an do
Escribir ('(',y,',',j,')'); {la posición de la cuadrícula en la misma columna}
writeln
{La posición de la cuadrícula en la diagonal desde la parte superior izquierda a la inferior derecha}
k:= 1;
x:= I
y:= j;
a:= y
mientras (x+1 & lt; =n) y (y+1 & lt; Hacer p>
Inicio
x:= x+1;
y:= y+1;
k:= k+1 ; p>
a:= y;
Fin;
x:= I;
y:= j;
while(x-1 & gt;=1) y (y-1 & gt;=1) hacen
Inicio
x:= x-1;
p >y:= y-1;
k:= k+1;
a:= y;
Fin;
qsort(1,k);
Para i1:=1 a k hacer
Escribe ('(', a, ')');
writeln
{La posición de la cuadrícula en la diagonal desde la parte inferior izquierda hasta la superior derecha}
k:= 1;
x: = I;
y:= j;
a:= y
mientras (x+1 & lt; =n) y (y-1 &; gt;=1) hacer
Inicio
x:= x+1;
y:= y-1;
k := k+1;
a:= y;
Fin;
x:= I;
y:= j ;
mientras (x-1 & gt; = 1) y (y+1 & lt; hacer
Inicio
x:= x-1 ;
y:= y+1;
k:= k+1;
a:= y;
Fin
qsort(1,k);
Para i1:=k downto 1 hacer
Escribir ('(', a, ')'); p>
escribir
Fin.
Espero adoptar