Программирование на языке С++ Домашнее задание Двумерные массивы Задачи 1) Вам дан двумерный массив 5 на 5, нужно заполнить его целыми числами через консоль и вывести на экран в виде таблицы.
2) У предыдущего массива, найдите сумму всех его элементов.
159
326
Ответы на вопрос:
Сортируем оба массива и проверяем, совпали ли они. если совпали, то это перестановка. #include < iostream> int* sorted(int *a, int size) { int *b = new int[size]; for (int i = 0; i < size; ++i) b[i] = a[i]; for (int i = 0; i < size - 1; ++i) { for (int j = i + 1; j < size; ++j) { if (b[i] > b[j]) { int t = b[i]; b[i] = b[j]; b[j] = t; } } } return b; } bool arr_eq(int *a, int *b, int size) { for (int i = 0; i < size; ++i) { if (a[i] ! = b[i]) return false; } return true; } bool is_permutation(int* a, int* b, int size) { int *sa = sorted(a, size), *sb = sorted(b, size); bool is_perm = arr_eq(sa, sb, size); delete [] sa; delete [] sb; return is_perm; } int* read_arr_int(int size) { int *a = new int[size]; for (int i = 0; i < size; ++i) { std: : cin > > a[i]; } return a; } int main() { int n = 0; std: : cin > > n; int *a = read_arr_int(n), *b = read_arr_int(n); std: : cout < < (is_permutation(a, b, n) ? "yes" : "no"); delete [] a; delete [] b; return 0; }
Популярно: Информатика
-
Дарчик125.10.2022 16:58
-
maksimsavelev129.06.2023 21:01
-
ПольгаБос18.10.2022 21:55
-
ТимурМеирханов22.08.2022 19:25
-
aleXxxx0315.10.2020 15:12
-
Манюня58913.04.2020 03:52
-
superplay0626.05.2023 18:20
-
happiness19854p06jm512.11.2022 19:36
-
gayazhan16.07.2020 16:28
-
dinbili318.06.2020 16:37