Content
如果一个序列的和能够被它的长度整除,我们称这个序列是不错的。如果一个序列的所有的非空子序列都是不错的,我们就称这个序列是完美的。现在有 \(t\) 组询问,每组询问给定一个整数 \(n\),请构造出一个由不大于 \(100\) 的正整数组成的长度为 \(n\) 的完美的序列。
数据范围:\(1\leqslant t,n\leqslant 100\)。
Solution
其实题目中有一个隐藏的条件:某些元素可以是相同的。
为什么呢?
我们不妨假设所有元素都应该是不同的,来看 \(n=100\) 时的情况:根据这个限制条件,这个序列里面的元素只有可能是 \(1,2,3,...,100\)。你把元素按照任意顺序排列,然后可以发现,长度为 \(2\) 的时候,就已经无法满足题目的要求了,因此必须要让某些元素相同才行。
因此,我们可以直接输出 \(n\) 个一,这样既能够恰好满足题目的要求,又非常的省事。
Code
int t, n;
int main() {
t = Rint;
while(t--) {
n = Rint;
F(i, 1, n) printf("1 ");
puts("");
}
return 0;
}