CF1430C Numbers on Whiteboard
思路
也是简单模拟一下,就会发现无论你怎么选择a和b,结果都是2;
既然如此,我就选择方便点的,我就从后往前选a和b。
带大家模拟一下:
n=10,为偶数:
1 2 3 4 5 6 7 8 9 10 找规律
1 2 3 4 5 6 7 8 10 (选择 9,10)第一次:(n-1,n)
第二次之后选的a和b相差都是2
1 2 3 4 5 6 7 9 (选择 8,10)第二次:(n-2,n)
1 2 3 4 5 6 8 (选择 7,9) 第三次:(n-3,n-1)
1 2 3 4 5 7 (选择 6,8) 第四次:(n-4,n-2)
...... ...
... ...
n=5,为奇数:
1 2 3 4 5
1 2 3 5 (选择4,5)第一次:(n-1,n)1 2 4 (选择3,5)第二次:(n-2,n)
1 3 (选择2,4)第三次:(n-3,n-1)
2 (选择1,3)第四次:(n-4,n-2)
所以无论n为奇偶都是一个做法
AC代码
#include <bits/stdc++.h>
using namespace std;signed main()
{ios::sync_with_stdio(false);cin.tie(0);int t;cin >> t;while (t--){int n;cin >> n;cout << 2 << '\n';if (n == 2){cout << "1 2\n";continue;}cout << n << ' ' << n - 1 << '\n';for (int i = n - 1; i > 1; --i){cout << i + 1 << ' ' << i - 1 << '\n';}}return 0;
}