Предмет: Информатика,
автор: A1l9i8n4a
дуже срочно даю 100 б
с++
На вхід функція приймає восьмизначне число. Необхідно з даного числа видалити усі цифри, що повторюються крім першої їх появи. Функція повинна повертати «відсортоване» число, яке необхідно вивести на екран. Наприклад: 51231242 ->51234.
experced:
дай мне 5 минут
Ответы
Автор ответа:
0
#include <iostream>
#include <unordered_set>
#include <algorithm>
using namespace std;
int removeDuplicateDigits(int number) {
string numStr = to_string(number);
unordered_set<char> seenDigits;
string result = "";
for (char digit : numStr) {
if (seenDigits.find(digit) == seenDigits.end()) {
seenDigits.insert(digit);
result += digit;
}
}
sort(result.begin(), result.end());
return stoi(result);
}
int main() {
int number;
cout << "Введите восьмизначное число: ";
cin >> number;
int sortedNumber = removeDuplicateDigits(number);
cout << "Отсортированное число: " << sortedNumber << endl;
return 0;
}
Похожие вопросы
Предмет: Алгебра,
автор: helpmeplease8669
Предмет: География,
автор: denbarabaka
Предмет: Математика,
автор: somebodymove
Предмет: Математика,
автор: snnansns
Предмет: Английский язык,
автор: tupikinakr