В рамках универсального перевода строки в snake_case такой подход с регулярками, наверное, самый хороший вариант:
import re
def to_snake_case(s: str) -> str:
s = re.sub('(.)([A-Z][a-z]+)',...
Представьте классическую боль: вы интегрируетесь со сторонним API (или парсите данные от фронтендеров), и вам прилетает JSON, где ключи названы кто во что горазд.
Ваша задача — написать функцию, которая берет...
Разбираем сдвиги ноликов 0️⃣
В комментах вы представили чуть ли не все способы решения задачи, какие можно придумать.
Конечно, классический паттерн для решения тут — два указателя.
Вот идеальное решение со сложностью O(n) по времени и O(1) по...
📝На вход подается список целых чисел nums. Нужно сдвинуть все нули в конец списка, сохранив исходный порядок ненулевых элементов.
Пример:
Input: [1, 0, 1, 2, 0, 1, 3]
Output: [1, 1, 2, 1, 3, 0, 0]
Сделать можно десятком...
Давай посмотрим на присланное решение:
import re
def num_emojis(arg):
return sum([re.match("^[:;][~-]?[)D]$",i) is not None for i in arg])
Работает? Да. Оставлять такое в проде? Нет.
1️⃣ Грех аллокации
Квадратные...
Сегодня очередная классика.
Задача:
Написать функцию, которая принимает на вход список строк и возвращает число равное количеству смайликов в этом списке.
Что считаем смайликом:
🟢у смайлика обязательно должны быть глаза....
Что там с подсчетом ноликов?
Базовый инстинкт большинства — написать list comprehension:
max([len(i) for i in s.split('1')])
Работать будет. Но вы сначала сплитите строку (создавая список в памяти), а потом...
Сегодня вам нужно проанализировать двоичную строку, состоящую только из нулей и единиц 0️⃣1️⃣1️⃣0️⃣
➰Функция должна на вход принимать такую строку и возвращать максимальное количество последовательных нулей в...
Для задачки было предложено такое однострочное решение с разными вариациями:
def solve(string):
s = ''.join([ch for ch in string if ch in '()'])
return len(max(s.split(')'), key=len))
Рабочее решение? Нет.
Если мы скорм...
Задачи на скобочные последовательности переживут нас всех. Сегодняшняя вариация — на поиск глубины.
Дано: Строка, содержащая корректное математическое выражение (цифры, знаки операций, скобки).
Задача: Вернуть целое число,...