fork download
  1. #include <stdio.h>
  2.  
  3. #define MAX(x, y) (x > y ? x : y)
  4. //#define MIN(x, y) (x < y ? x : y)
  5.  
  6. void f(int n)
  7. {
  8. int i, j, x, y;
  9. for (j = n; j--; ) {
  10. y = n % 2 ? n / 2 - j : j - n / 2 + 1;
  11. for (i = n; i--; ) {
  12. x = n % 2 ? n / 2 - i : i - n / 2;
  13. printf("%d%c", n * n - MAX(MAX(-MAX(-(4 * x * x + x - y), -(4 * x * x + 3 * x + y)), 4 * y * y - y + x), 4 * y * y - 3 * y - x), 9 + !i);
  14. //printf("%d%c", n * n - MAX(MAX(MIN(4 * x * x + x - y, 4 * x * x + 3 * x + y), 4 * y * y - y + x), 4 * y * y - 3 * y - x), 9 + !i);
  15. }
  16. }
  17. puts("");
  18. }
  19.  
  20. int main()
  21. {
  22. f(1);
  23. f(4);
  24. f(9);
  25. return 0;
  26. }
  27.  
Success #stdin #stdout 0s 2292KB
stdin
Standard input is empty
stdout
1

1	2	3	4
12	13	14	5
11	16	15	6
10	9	8	7

1	2	3	4	5	6	7	8	9
32	33	34	35	36	37	38	39	10
31	56	57	58	59	60	61	40	11
30	55	72	73	74	75	62	41	12
29	54	71	80	81	76	63	42	13
28	53	70	79	78	77	64	43	14
27	52	69	68	67	66	65	44	15
26	51	50	49	48	47	46	45	16
25	24	23	22	21	20	19	18	17