C++ Вопрос Уникальные символы в строке

Начинающий
Статус
Оффлайн
Регистрация
17 Сен 2022
Сообщения
2
Реакции[?]
0
Поинты[?]
0
В строку записываются рандомные 4 цифры, они должны быть уникальные. Как такое реализовать максимально просто без использования сложных конструкций языка?
 
dev
Забаненный
Статус
Оффлайн
Регистрация
5 Апр 2022
Сообщения
302
Реакции[?]
215
Поинты[?]
3K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
В строку записываются рандомные 4 цифры, они должны быть уникальные. Как такое реализовать максимально просто без использования сложных конструкций языка?
C++:
int getRandomInt(int min, int max)
{
  return min + rand() % (max - min);
}
 
Начинающий
Статус
Оффлайн
Регистрация
29 Июн 2020
Сообщения
18
Реакции[?]
15
Поинты[?]
0
C++:
std::string in = "123456789";
std::string out;

std::shuffle(in.begin(), in.end(),
    std::mt19937{ std::random_device{}() });

std::sample(in.begin(), in.end(), std::back_inserter(out), 4,
    std::mt19937{ std::random_device{}() });

std::cout << out;
 
Последнее редактирование:
Пользователь
Статус
Оффлайн
Регистрация
8 Апр 2022
Сообщения
663
Реакции[?]
104
Поинты[?]
67K
C++:
std::string in = "123456789";
std::vector<char> out;

std::shuffle(in.begin(), in.end(),
    std::mt19937{ std::random_device{}() });

std::sample(in.begin(), in.end(), std::back_inserter(out),4,
    std::mt19937{ std::random_device{}() });

const std::string answer(out.begin(), out.end());

std::cout << answer;
пиздец хуйни из stl можно же без этого всякого сделать
 
Сверху Снизу