code:
#include<bits/stdc++.h>
using namespace std;
const int N=100000+10;
int n;
int a[N];
int cnt[N];
int main(){
cin>>n;
for(int i=0;i<n;i++){
cin>>a[i];
}
for(int i=0;i<n;i++){
if(a[i]<=n&&!cnt[a[i]]){
cnt[a[i]]=true;
cout<<a[i]<<" ";
}
else{
for(int j=1;j<=n;j++){
if(!cnt[j]){
cout<<j<<" ";
cnt[j]=true;
}
}
}
}
return 0;
}
样例全过,自造数据也过.
请问为什么wa