Python Community
13.1K subscribers
1.24K photos
26 videos
15 files
711 links
Python Community RU - СНГ сообщество Python-разработчиков

Чат канала: @python_community_chat

Сотрудничество: @cyberJohnny и @Sergey_bzd

РКН реестр:
https://knd.gov.ru/license?id=67847dd98e552d6b54a511ed&registryType=bloggersPermission
Download Telegram
⚡️ Задачка с собеседования | #Easy

Условие:

На вход идёт искомое число и список неотрицательных чисел. Вам нужно понять, есть ли в списке числа, которые являются суммой двух.

Пример:

is_sum(1, [0, 1])
is_sum(9, [2, 4, 5, 7])
is_sum(13, [5, 6, 3, 4])

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Задачка с собеседования | #Easy

Условие:

Вам нужно найти сумму N минимальных чисел из входящего списка. На вход идёт целое число — количество чисел, что надо сложить и список с целыми числами.

Пример:

find_sum_n(3, [6, 4]) -> 10 # 6 + 4 = 10
find_sum_n(2, [0, 1, 2, 3]) -> 1 # 0 + 1 = 1
find_sum_n(3, [16, -10, -5, 100, 14]) -> -1 # -10 + (-5) + 14 = -1

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Задачка с собеседования | #Easy

Условие:

Дано два списка, вам нужно проверить, являются ли элементы внутри первого списка квадратом элементов из второго списка. Порядок в данном случае не имеет значения.

Пример:

same([2, 5, 3], [9, 4, 25]) -> True
same([1, 0, 5], [1, 2, 24]) -> False
same([], []) -> True

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Задачка с собеседования | #Easy

Условие:

Вам нужно превратить строку в список, состоящий из порядкового номера каждой буквы ('a' = 1, 'b' = 2). Игнорируйте регистр и пропускайте символы, не входящие в алфавит.

Набор символы английского алфавита можно найти в string.ascii_letters.

Пример:

to_alphabet_pos('a-z') -> [1, 26]
to_alphabet_pos('S p A C/ e') -> [19, 16, 1, 3, 5]
to_alphabet_pos('1!60:)7&') -> []

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Задачка с собеседования | #Easy

Условие:

Вам нужно получить наибольшее число из цифр входящего числа.

Пример:

digits_order(1234) -> 4321
digits_order(151) -> 511
digits_order(0) -> 0

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Задачка с собеседования | #Easy

Условие:

Вам нужно найти строку с наивысшим балом. Бал каждого слова — сума позиций всех букв (a = 1, b = 2).

Если встречаются два слова с одинаковым кол-вом баллов, верните первое. Все слова на входе правильные и состоят из букв англ алфавита в нижнем регистре.

Пример:

highest('do you wanna coffee') -> 'you'
highest('abcd dbcai') -> 'dbcai'
highest('aa b') -> 'aa'
highest('d bb') -> 'd'

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Задачка с собеседования | #Easy

Условие:

Вам нужно узнать, является ли число квадратом какого-то числа. На вход идёт целое число.

Пример:

is_square(4) -> True
is_square(2) -> False
is_square(-5) -> False

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Задачка с собеседования | #Easy

Условие:

Написать функцию, которая будет возвращать столетие на основе года.

Пример:

get_century(2022) -> 21
get_century(2000) -> 20
get_century(1910) -> 20
get_century(101) -> 2

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Задачка с собеседования | #Easy

Условие:

Вам нужно посчитать количество улыбающихся лиц в строке. Смайлик состоит из : или ; в виде глаз, может быть нос: - или ~, а также рот: ) или D.

Правильные смайлики: ':-D' ';)' ';~)'
Неправильные смайлики: ';(' ':>' ':}' ':]'

Пример:

count_smileys(':D :~) ;~D :)') -> 4
count_smileys(':) :( :D :O :;') -> 2
count_smileys(';] :[ ;* :$ ;-D') -> 1

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Задачка с собеседования | #Easy

Условие:

Вам дано число, вы можете только делить его на 2 или вычитать 1. Нужно узнать, сколько минимум шагов нужно сделать, чтобы получить 0 из полученного числа.

Пример:

min_steps(8) -> 4
min_steps(14) -> 6
min_steps(123) -> 12

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Задачка с собеседования | #Easy

Условие:

На входит идёт список из чисел, вам надо получить самое большое число, объединив все элементы в одно целое.

Пример:

solution([78, 113, 8001]) ➞ 800178113
solution([61, 228, 9]) ➞ 961228
solution([1, 2, 3]) ➞ 321

📌 Пишите ваше решение в комментариях. Решение будет примерно через час на этом канале. 👇

#Задачка_с_собеседования
⚡️ Задачка с собеседования | #Easy

Условие:

Напишите функцию, которая будет возвращать количество различных буквенных символов и цифр, не зависящих от регистра, которые встречаются во входной строке более одного раза

Пример:

solution('') ➞ 0
solution('abcde') ➞ 0
solution('abcdeaB') ➞ 2

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Задачка с собеседования | #Easy

Условие:

На вход идёт два значения — строка чисел string и число sz. Вам нужно разрезать строку на куски sz размером (если последний кусок меньше sz, его игнорировать). Если фрагмент это целое число, у которого сумма кубов цифр делится на 2, то переверните этот фрагмент, иначе переместите первую цифру влево.

Пример:

revrot('123456987653', 6) ➞ '234561356789'
revrot('66443875', 4) ➞ '44668753'
revrot('664438769', 8) ➞ '67834466'
revrot('123456779', 8) ➞ '23456771'

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Задачка с собеседования | #Easy

Условие:

Вам нужно перевести секунды в формат часы:минуты:секунды. Если секунд меньше, чем 1 час, то стоит выводить в формате минуты:секунды. Не забывайте заполнять нулями значения, чтобы они выглядели так: 1:01:01, а не 1:1:1.

Пример:

convert_secs(65) ➞ '1:05'
convert_secs(12345) ➞ '3:25:45'
convert_secs(43200) ➞ '12:00:00'

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Задачка с собеседования | #Easy

Условие:

Напишите функцию, которая будет возвращать строку в виде алмаза, как на фото выше. В функцию передаётся количество строк. Если число < 0 или не делится на 2, возвращайте None.

Пример на фото

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Задачка с собеседования | #Easy

Условие:

Нужно перевести RGB в HEX формат.

Пример:

rgb_to_hex(255, 255, 255) ➞ 'FFFFFF'
rgb_to_hex(127, 13, 253) ➞ '7F0DFD'
rgb_to_hex(0, 0, 0) ➞ '000000'

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Задачка с собеседования | #Easy

Условие:

Вам нужно написать простенькую программу для обработки кода. Она работает так, если команда:

· 'i', то мы добавляем к числу 1 (которое изначально 0)
· 'd', то мы забираем у числа единицу
· 's', то мы возводим значение в квадрат
· 'o', то мы добавляем число в массив, который после возвращаем

Если вам встречаются другие символы, просто игнорируйте их.

Пример:

parse('ooo') ➞ [0, 0, 0]
parse('iiisdoso') ➞ [8, 64]
parse('isoisoiso') ➞ [1, 4, 25]

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Задачка с собеседования | #Easy

Условие:

Нужно подсчитать количество повторяющихся символов в строке.

Пример:

duplicate_count('abcde') ➞ 0
duplicate_count('aabbcde') ➞ 2 # a and b
duplicate_count('ABBBac') ➞ 2 # a and b

📌 Пишите ваше решение в комментариях. Решение будет примерно через час на этом канале. 👇

#Задачка_с_собеседования
⚡️ Задачка с собеседования | #Easy

Условие:

Список [0, 1, 3, 6, 10] можно разделить на части: [0, 1, 3, 6, 10], [1, 3, 6, 10], [3, 6, 10], ..., []. Вам надо найти сумму всех этих частей.

Пример:

partssums([0, 1, 3, 6, 10]) ➞ [20, 20, 19, 16, 10, 0]
partssums([1, 2, 3, 4, 5, 6]) ➞ [21, 20, 18, 15, 11, 6, 0]


📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Задачка с собеседования | #Easy

Условие:

Ваша задача посчитать формулу (1 / n!) * (1! + 2! + 3! + ... + n!), где n! это factorial(n) и округлить результат до 6 чисел.

Пример:

going(5) ➞ 1.275
going(6) ➞ 1.2125
going(10) ➞ 1.11274

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования