Skip to content

val09072010/py_techinterview

Repository files navigation

INTRO

В данном репозитории хранятся примеры учебных задач, которые я решал или пытался решить.

I. CodeForce. Teamscode Summer 2021

Задача: https://codeforces.com/gym/103241/problem/H

Решить ее к сожалению не удалось, решение "в лоб" проваливало тест на производительность, решение c multiprocessing не выполнялось на сервере CodeForce.

II. Yandex

Детали: https://yandex.ru/jobs/vacancies/dev/dev_python_pochta/)

o1. Списки

Есть два списка разной длины. В первом содержатся ключи, а во втором — значения. Напишите функцию, которая создает из этих ключей и значений словарь. Если какому-то ключу не хватило значения, в словаре должно быть значение None. Значения, которым не хватило ключей, нужно игнорировать.

o2. Top-10 ips

Предположим, что у вас есть access.log веб-сервера. Как с помощью стандартных консольных средств найти десять IP-адресов, от которых было больше всего запросов? Как то же самое сделать с помощью скрипта на Python?

o3. Input Validator

В системе авторизации есть ограничение:

  1. логин должен начинаться с латинской буквы, состоять из:
  2. латинских букв
  3. цифр
  4. точки и минуса
  5. но заканчиваться только латинской буквой или цифрой.
  6. минимальная длина логина — один символ,
  7. максимальная — 20.

Напишите код, проверяющий соответствие входной строки этому правилу. Придумайте несколько способов решения задачи и сравните их.