var n, i, j, x, y, nx, ny : longint; a : array[0..40, 0..40] of longint; begin for i := 0 to 39 do for j := 0 to 39 do a[i][j] := 0; read(n); y := 0; x := n - 1; n := 2 * n - 1; for i := 1 to n * n do begin a[y][x] := i; ny := (y - 1 + n) mod n; nx := (x + 1) mod n; if ((y = 0) and (x = n - 1)) or (a[ny][nx] <> 0) then y := y + 1 else begin y := ny; x := nx; end; end; for j := 0 to n - 1 do write(a[0][j], ' '); writeln; end.
输入:3
输出:1
