10 条题解
-
-1
S1A 题解
第四篇题解。
此题是构造题。因为序列的单调递增序列一定包含了这个序列的所有元素,所以我们这个序列剩下的一定是重复的元素,又因为重复的元素不影响数字的种类,所以我们把它们放在后面输出。首先判断无解的情况,然后构造序列的单调递增序列并输出,接着将剩下的元素输出即可。
代码:
#include<iostream> using namespace std; int a[100001]; int main() { int n,t=0; cin>>n; for(int i=1;i<=n;i++) { int b; cin>>b; a[b]++; if(a[b]==1)t++; } if(t%2)cout<<-1; else { for(int i=1;i<=n;i++)if(a[i])a[i]--,cout<<i<<' '; for(int i=1;i<=n;i++)while(a[i]--)cout<<i<<' '; } return 0; }
信息
- ID
- 2
- 时间
- 1000ms
- 内存
- 512MiB
- 难度
- 2
- 标签
- 递交数
- 442
- 已通过
- 192
- 上传者