文章
1
粉丝
0
获赞
0
访问
125
一个暴力解,时间复杂度过高故通过不了评测。
思路:双重for循环,重复项标记为-1
#include<stdio.h>
int main(){
int n,i,j;
scanf("%d",&n);
int a[n];
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
for(i=0;i<n;i++){
for(j=0;j<n;j++){
if(a[i]==a[j]&&i!=j) {
a[j]=-1;
}
}
}
for(i=0;i<n;i++){
if(a[i]!=-1) printf("%d ",a[i]);
}
return 0;
}
登录后发布评论
可以用数组标记法来判断是否出现过
新开一个数组f[20005],f[a[i]]=1表示a[i]出现过