Предмет: Информатика,
автор: alibimukanov
Напишите программу, которая строит случайную перестановку чисел от 1 до N – массив из N натуральных чисел, в котором есть все числа от 1 до N .
Входные данные
Входная строка содержит размер массива N . Гарантируется, что 0 < N ≤ 10000 .
Выходные данные
Программа должна вывести в одну строку элементы полученного случайного массива, разделив их пробелами. В массиве должны присутствовать все натуральные числа от 1 до N .
CPP
Примеры
входные данные
10
выходные данные
9 2 7 5 6 10 8 4 3 1
Ответы
Автор ответа:
1
Ответ:
#include <iostream>
#include <ctime>
int main()
{
int N, i, k, tmp;
int A[10000];
std::cin >> N;
for (i = 0; i < N; i++)
A[i] = i+1;
srand(time(0));
for (i = 0; i < N; i++)
{
tmp = A[i];
k = rand() % N;
A[i] = A[k];
A[k] = tmp;
}
for (i = 0; i < N; i++)
std::cout << A[i] << " ";
return 0;
}
alibimukanov:
а как сделать чтоб первое число всегда 5
Похожие вопросы
Предмет: Другие предметы,
автор: Lan011079
Предмет: Русский язык,
автор: stankevich64
Предмет: Русский язык,
автор: пыупы
Предмет: Химия,
автор: крутой215780
Предмет: Литература,
автор: Настя7591