Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лр 4.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
69.81 Кб
Скачать

1

X[1..N], y[1..M] - одномерные массивы n, m - количество элементов в массивах

ВВОД: n,m, x[1..n], y[1..m]

При нахождении общего элемента массивов мы увеличиваем количество общих элементов, меняем i, j, чтобы продолжать сравнение не с первых элементов массивов снова, а с элементов больших по величине

K = K +1

i = i + 1

r = j

j = j + 1

i = 1 K = 0 j = 1 r = 1

i, j - текущие номера элементов массивов x[1..n] и y[1..m] K - количество общих элементов массивов r - вспомогательная переменная, запоминающая номер последнего на данный момент общего элемента в массиве y[1..m]

i<=n

-

+

j<=m

i = i + 1

j = r

-

ВЫВОД: К

+

x[i]=y[j]

+

1

КОНЕЦ

-

j = j + 1

Задание9: Известно, что некоторое число содержится в каждом из трех

целочисленных неубывающих массивов ,

Найти одно из этих чисел.

Р

НАЧАЛО

ВВОД: n,m,k, x[1..n], y[1..m],z[1..k]

i = 1

P = 0 Q = m

P <= Q

S = (P+Q)div2

y[S] < x[i]

y[S ]= x[i]

Q = S-1

P = S+1

P <= Q

S = (P+Q)div2

z[S ]= x[i]

z[S] < x[i]

P = S+1

Q = S-1

1

1

2

ешение:
В массивах x[1..n], y[1..m] и z[1..k] содержится хотя бы один общий элемент. Можно сначала для элемента x[i] найти равный ему элемент в массиве y[1..m] методом бинарного поиска. Потом следует искать такой же элемент в последнем массиве z[1..k]. Если такого нет, то берется элемент x[i+1] и алгоритм повторяется. Так как общий элемент всех трех массивов точно есть, то окончание массива x[1..n] можно не проверять.

X[1..N], y[1..M], z[1..K] - одномерные массивы n, m, k - количество элементов в массивах

i = i + 1

P = 0 Q = k

2

Вывод: X[I]

НАЧАЛО

i - текущий номер элемента массива x[1..n]

P,Q - начало и конец части массива, в которой может находится x[i]

Условие, что для элемента x[i] в массиве y[1..m] существует равный элемент

S - вспомогательная переменная, середина части массива

+

+

+

+

+

+

-

-

-

-

-

-

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]