CF1443A Kids Seating 题解

Content

有 \(t\) 组询问,每组询问给定一个数 \(n\),试构造出一个长度为 \(n\) 的数列 \(\{a_i\}_{i=1}^n\),使得:

  • \(\forall i\in[1,n],1\leqslant a_i\leqslant 4n\)。
  • \(\forall1\leqslant i,j\leqslant n,\gcd(a_i,a_j)\neq1,a_i\nmid a_j,a_j\nmid a_i\)。

数据范围:\(1\leqslant t,n\leqslant 100\)。

Solution

我们可以发现,样例中的数都是 \(2\) 的倍数,所以我们考虑从 \(4n\) 开始往前数 \(n\) 个偶数,然后我们发现第 \(n\) 个数正好就是 \(2n+2\),而且可以证明这样可以刚好满足题目的要求,因此直接输出即可。

或者你也可以从 \(2n\) 开始往后数 \(n\) 个偶数,最后一个数就是 \(4n-2\),可以证明这样也能够满足题目的要求。

Code

int t, n;
bool isprime[1007];

int main() {
	//This program is written in Windows 10 by Eason_AC
	getint(t);
	while(t--) {
		getint(n);
		_for(i, n, 2 * n - 1) {
			int ans = 2 * i;
			writeint(ans);
			putchar(i == 2 * n - 1 ? '\n' : ' ');
		}
	}
	return 0;
}
上一篇:php文件包含的几种方式总结


下一篇:【数据结构与算法】进出栈方案数问题