如题。我的做法只能过奇数,出题人给了 50。
大致思路是,考虑在第 2i 列放很多 2i 与 2i+1,让它们与相邻的 2i−1 列、2i+1 列产生贡献。对于每对点对,列坐标为偶数那个点的数值小于列坐标为奇数的那个点的数值。
n=9
1
3 2
5 1 4
7 2 6 3
9 1 8 4 5
8 2 9 3 7 6
6 1 7 4 9 5 8
4 2 5 3 8 6 9 7
2 1 3 4 6 5 7 8 9
n=7
1
3 2
5 1 4
7 2 6 3
6 1 7 4 5
4 2 5 3 7 6
2 1 3 4 6 5 7
如果您没看懂规律可以看代码。
冲突是,对于偶数列,它的长度是偶数,无法错开,因此同一行会出现一样的数字。