Войти Регистрация
Алгоритмы

160. Общая часть двух выписок

Средняя

Выписка из банка a и выписка из бухгалтерской программы клиента b — списки кодов операций в порядке времени. В каждой из них часть операций пропущена или лишняя.

Сопоставление — пары операций с равными кодами, причём порядок пар в обеих выписках одинаков и каждая операция участвует не больше чем в одной паре.

Верните наибольшее число пар.

В работе: Сверка выписки Т‑Бизнеса с учётом клиента: всё, что не попало в сопоставление, уходит бухгалтеру на ручной разбор.

Пример 1

Ввод
a = [5, 1, 7, 3, 1, 9]
b = [1, 5, 7, 1, 9, 3]
Вывод
4

Например 5, 7, 1, 9 — четыре пары.

Пример 2

Ввод
a = [1, 2]
b = [3, 4]
Вывод
0

Общих операций нет.

Ограничения

  • 0 ≤ длина каждого списка ≤ 1000
  • 0 ≤ код ≤ 10⁹
  • Лимит — 2 с на тест (2000 мс).
Как вызывается ваш код Читать ввод и печатать ответ не нужно: мы вызываем функцию на каждом тесте и сравниваем то, что она вернула. print() и console.log() уходят в консоль.
def common_ops(a, b):
Динамическое программированиеНаибольшая общая подпоследовательностьцельn2

Источник: наша задача на данных Т-Банка. Условие пересказано своими словами.