#include <iostream>
#include <vector>
using namespace std;
// Функция сортировки вставками
void insertionSort(vector<char>& arr) {
int n = arr.size();
for (int i = 1; i < n; i++) {
char key = arr[i];
int j = i - 1;
// Перемещаем элементы arr[0..i-1], которые больше key,
// на одну позицию вперед от их текущей позиции
while (j >= 0 && arr[j] > key) {
arr[j + 1] = arr[j];
j = j - 1;
}
arr[j + 1] = key;
}
}
// Функция для вывода уникальных символов (встречающихся ровно один раз)
void printUniqueCharacters(const vector<char>& arr) {
int n = arr.size();
if (n == 0) return;
// Проверяем первый элемент
if (n == 1 || arr[0] != arr[1]) {
cout << arr[0] << " ";
}
// Проверяем элементы в середине массива
for (int i = 1; i < n - 1; i++) {
if (arr[i] != arr[i - 1] && arr[i] != arr[i + 1]) {
cout << arr[i] << " ";
}
}
// Проверяем последний элемент
if (arr[n - 1] != arr[n - 2]) {
cout << arr[n - 1] << " ";
}
cout << endl;
}
int main() {
int k;
cout << "Введите количество символов: ";
cin >> k;
vector<char> symbols(k);
cout << "Введите " << k << " символов латинского алфавита: ";
for (int i = 0; i < k; i++) {
cin >> symbols[i];
}
// Сортируем массив
insertionSort(symbols);
cout << "Уникальные символы в алфавитном порядке: ";
printUniqueCharacters(symbols);
return 0;
}