CF1857C 题解
思路
因为这题有 SPJ,我们可以输出任意一种答案,所以我们可以将元素从小到大排序,然后我们可以发现, 出现了 次, 出现了 次,……, 出现了 次, 出现了 次,然后我们只要在输出的时候跳着输出即可。
代码
# include <bits/stdc++.h> //万能头
using namespace std;
int t, n, a[1000005], m;
int main () {
cin >> t;
while (t --) {
cin >> n;
m = (n - 1) * n >> 1; //计算输入序列长度
for (int i = 0; i < m; ++ i)
cin >> a[i];
sort (a, a + m); //排序
for (int i = n, j = 0; -- i /*i 从 n-1 枚举到 1*/; j += i /*循环增量*/)
cout << a[j] << ' ';
cout << (int) 1e9 << '\n'; //a[n-1] 随便设一个极大值就可以了,但是不能超过题目给定的 1e9
}
return 0; //结束程序
}

浙公网安备 33010602011771号