Вход


Главная страница >> Учебный процесс >> Задачник >> Олимпиадные задачи (с решениями) >> Сортировка >> Номер 6

[Назад]    [Содержание ]    [Вперед]

  


Номер 6


  Условие: Номер 6


Задача 6. Даны две целочисленных таблицы А [1:10] и В[1:15]. Разработать алгоритм и написать программу, которая проверяет, являются ли эти таблицы похожими. Две таблицы называются похожими, если совпадают множества чисел, встречающихся в этих таблицах.

  Решение задачи: Номер 6


Решение задачи 6. Мы можем отсортировать оба массива - и A, и B (например, по неубыванию), далее, если первые элементы массивов A и B совпадают, то ищем и в A, и в B минимальные элементы, большие данного, и повторяем сравнения; если же элементы не совпадают, либо один из массивов уже закончился, а другой еще нет, то массивы не похожие. {A и B уже отсортированы} i:=1; j:=1; {смотрим массивы A и B, начиная с первых элементов} while (i<=10) and (j<=15) and (A[i]=B[j]) do begin element:=A[i]; while (i<=10) and (A[i]=element) do i:=i+1; {поиск несовпадающего элемента} while (j<=15) and (B[j]=element) do j:=j+1; {поиск несовпадающего элемента} end; if (i=11) and (j=16) {просмотрели все элементы A и B} then writeln('Массивы похожи') else writeln('Массивы непохожи');

Назад



[Назад]    [Содержание ]    [Вперед]

  


  
За содержание страницы отвечает Гончарова М.Н.
©
Кафедра СПиКБ, 2002-2017