https://www.luogu.com.cn/problem/P1059
思路
去重
两个循环,一个循环每个数,一个遍历全部。 找到一样的标记为-1
之后在创建一个数组,把不是-1的数 都放在数组里。
排序:
使用了选择排序。
#include <stdio.h>
int n, count = 0, b[10001] = {0}, m, q = 0, a[10001] = {0};
int quchong(int a[]) {
for ( int j = 0; j < n - 1; j++) {
for ( int m = j + 1; m < n; m++) {
if (a[m] == a[j] && a[j] != -1) {
a[m] = -1;
count++;
}
}
}
return n - count;
}
void sort(int a[]) {
for (int i = 0; i < n; i++)
if (a[i] != -1) {
b[q] = a[i];
q++;
}
int t;
for (int i = 0; i < q; i++)
for (int j = i + 1; j < q; j++)
if (b[i] > b[j]) {
t = b[i];
b[i] = b[j];
b[j] = t;
}
}
int main() {
scanf("%d", &n);
for (int i = 0; i < n; i++)
scanf("%d", &a[i]);
m = quchong(a);
sort(a);
printf("%d\n", quchong(a));
for (int i = 0; i < q; i++)
printf("%d ", b[i]);
return 0;
}