Версия клиента VK — строка из чисел через точку, например "8.112.3". Числа сравниваются слева направо как числа, а не как строки: 1.10 новее 1.9. Ведущие нули не важны: 1.01 и 1.1 — одна версия.
Если у одной версии частей меньше, недостающие считаются нулями: 2.0 и 2 равны. Верните 1, если a новее, -1, если новее b, и 0, если версии равны.
В работе: Сервер решает, показать ли плашку «обновите приложение»: строковое сравнение считает 8.9 новее 8.112, и плашку получили бы те, кто уже обновился.
Пример 1
Ввод
a = "8.112.3" b = "8.9"
Вывод
1
112 больше 9.
Пример 2
Ввод
a = "2.0.0" b = "2"
Вывод
0
Хвост из нулей не меняет версию.
Ограничения
- 1 ≤ длина строк ≤ 500
- части — неотрицательные числа до 10⁹, разделены одной точкой
- Лимит — 2 с на тест (1500 мс).
Как вызывается ваш код
Читать ввод и печатать ответ не нужно: мы вызываем функцию на каждом тесте и сравниваем то, что она вернула.
print() и console.log() уходят в консоль.
def compare_versions(a, b):
Источник: наша задача на данных VK. Условие пересказано своими словами.
Давали на собеседовании?
Стр. 1Ctrl+Enter — запуск · Ctrl+Shift+Enter — отправка
Ожидаемый ответ не нужен: покажем, что вернула функция.
Здесь появится результат отправки.