Ctrl K

Какой датчик сбился

Лёгкая
Два одинаковых датчика одновременно снимают показания: first[i] и second[i] — это i-е измерение первого и второго датчика. Такой датчик иногда сбоит: он теряет ровно одно измерение. Все измерения после потерянного сдвигаются на одну позицию влево, а на последнее место записывается случайное число, которое точно не равно потерянному. Например, вместо [1, 2, 3, 4, 5] после потери тройки можно получить [1, 2, 4, 5, 8]. Сбоить мог не более чем один датчик, а показания согласуются хотя бы с одним из вариантов: сбоя нет, сбоил первый или сбоил второй. Верните 1 или 2 — номер сбившегося датчика. Если сбоя не было или по данным нельзя однозначно понять, какой датчик сбился, верните -1.
Пример 1
first=[7, 3, 9, 4], second=[7, 9, 4, 1] → 2

Второй прибор потерял значение 3: 9 и 4 сдвинулись влево, а в конце появилось случайное 1. Первый прибор так получиться не мог.

Пример 2
first=[5, 5, 8], second=[5, 5, 2] → -1

Отличается только последнее значение. Любой из приборов мог потерять его и записать на его место случайное, поэтому определить неисправный нельзя.

Пример 3
first=[4, 6, 6, 2], second=[4, 6, 6, 2] → -1

Данные совпадают — сбоя нет.

Ограничения
  • len(first) = len(second)
  • 1 ≤ len(first) ≤ 100
  • 1 ≤ first[i], second[i] ≤ 100
  • Показания объясняются тем, что сбоя нет или сбоил ровно один датчик
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСжать повторы в отсортированном массиве ЛёгкаяВыкинуть лишнее значение ЛёгкаяСлияние в запасной хвост ЛёгкаяНули в конец ЛёгкаяЗначения в обоих списках Лёгкая
загружаем Python…
Вход
first=[7, 3, 9, 4], second=[7, 9, 4, 1]
Ожидается
2

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 101 тест на сервере, включая скрытые.