Задача с кодом. Сколько чисел?
Напишите функцию, которая будет принимать вложенный список и возвращать общее количество чисел в нем.
Вложенный список может содержать числа, строки и пустые списки.
Примеры:
Решение на нашем сайте.
#задача #coding
Напишите функцию, которая будет принимать вложенный список и возвращать общее количество чисел в нем.
Вложенный список может содержать числа, строки и пустые списки.
Примеры:
count_number([["", 17.2, 5, "edabit"]]) ➞ 2
# 17.2 и 5.
count_number([[[[[2, 14]]], 2, 3, 4]]) ➞ 5
# 2, 14, 2, 3 и 4.
count_number([["number"]]) ➞ 0
Решение на нашем сайте.
#задача #coding
❤3
Задача с кодом. Количество списков внутри списка
Нужно написать функцию, возвращающую количество списков внутри списка.
Примеры:
Решение на нашем сайте.
#задача #coding
Нужно написать функцию, возвращающую количество списков внутри списка.
Примеры:
num_of_sublists([[1, 2, 3]])
➞ 1num_of_sublists([[1, 2, 3], [1, 2, 3], [1, 2, 3]])
➞ 3 num_of_sublists([[1, 2, 3], [1, 2, 3], [1, 2, 3], [1, 2, 3]])
➞ 4 num_of_sublists([1, 2, 3])
➞ 0Решение на нашем сайте.
#задача #coding
❤2
Задача с кодом. Как скоро вы накопите свой первый миллион?
Допустим, вы нашли свою работу мечты. В этой компании любопытная система оплаты: в геометрической прогрессии. За первый месяц вы получаете сумму
Напишите функцию, которая будет принимать
Предположим, что вы ничего не тратите из зарплаты, пока не накопите больше миллиона.
Примеры:
1m = 50
2m= 5050
3m = 505050
4m = 50505050
Примечания:
Не забудьте вернуть результат в месяцах. Накопить нужно больше миллиона (savings > 1000000).
Решение на нашем сайте.
#задача #coding
Допустим, вы нашли свою работу мечты. В этой компании любопытная система оплаты: в геометрической прогрессии. За первый месяц вы получаете сумму
first_month
, но уже в следующем месяце ваша зарплата вырастет в multiplier
раз.Напишите функцию, которая будет принимать
first_month
и multiplier
и возвращать число месяцев, необходимых для того, чтобы скопить миллион.Предположим, что вы ничего не тратите из зарплаты, пока не накопите больше миллиона.
Примеры:
million_in_month(10, 2)
➞ 17million_in_month(100, 1.01)
➞ 464million_in_month(50, 100)
➞ 41m = 50
2m= 5050
3m = 505050
4m = 50505050
Примечания:
Не забудьте вернуть результат в месяцах. Накопить нужно больше миллиона (savings > 1000000).
Решение на нашем сайте.
#задача #coding
❤2🤣2👍1
В стену вмонтирован специальный аппарат, выдающий монетки. За стеной с каждой стороны стоит человек. Оба они могут взаимодействовать с аппаратом.
Если бросить монетку в аппарат, человек, стоящий за стеной, получит 3 монетки. И наоборот.
Если оба человека будут честно тратить свои монетки, чтобы второй получил прибыль (т.е. делиться, share), оба они будут получать по 2 монетки прибыли по очереди.
Но всегда есть вероятность, что кто-то поступит эгоистично (steal): не захочет тратить свои монетки, но с радостью заберет 3 монетки прибыли, если второй поделится.
Задание
Допустим, у каждого человека есть по 3 монетки. Создайте функцию, которая будет высчитывать прибыль обоих людей. На вход функция будет принимать два списка строк. Списки будут представлять поведение этих людей (слова share и/или steal)
Примеры
balances(["share"], ["share"])
➞ [5, 5]# Оба человека тратят по монетке и получают по 3.
get_coin_balances(["steal"], ["share"])
➞ [6, 2]# Первый человек получает 3 монетки, второй тратит одну.
get_coin_balances(["steal"], ["steal"])
➞ [3, 3]# Никто ничего не тратит и не получает, остаются при своих.
get_coin_balances(["share", "share", "share"], ["steal", "share", "steal"])
➞ [3, 11]Примечания
- В «минус» никто не уйдет, так что числа всегда будут положительными.
- Слова будут передаваться в нижнем регистре.
Решение на нашем сайте.
#задача #coding
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8
Задача с кодом. Группы из трех букв
Напишите функцию, которая будет принимать строку и возвращать отсортированный список трехбуквенных групп.
Список формируется следующим образом: берем первые три буквы строки, затем сдвигаемся на одну букву и берем следующие три буквы и т. д. Если в переданной строке меньше трех букв, нужно вернуть пустой список.
Разбор примера
# 1-я группа: "hon"
# 2-я группа: "pyt"
# 3-я группа: "tho"
# 4-я группа: "yth"
# Не забудьте отсортировать список!
Другие примеры
Решение на нашем сайте.
#задача #coding
Напишите функцию, которая будет принимать строку и возвращать отсортированный список трехбуквенных групп.
Список формируется следующим образом: берем первые три буквы строки, затем сдвигаемся на одну букву и берем следующие три буквы и т. д. Если в переданной строке меньше трех букв, нужно вернуть пустой список.
Разбор примера
three_letter_collection("python")
➞ ["hon", "pyt", "tho", "yth"]# 1-я группа: "hon"
# 2-я группа: "pyt"
# 3-я группа: "tho"
# 4-я группа: "yth"
# Не забудьте отсортировать список!
Другие примеры
three_letter_collection("slap")
➞ ["lap", "sla"]three_letter_collection("click")
➞ ["cli", "ick", "lic"]three_letter_collection("cat")
➞ ["cat"]three_letter_collection("hi")
➞ []Решение на нашем сайте.
#задача #coding
❤7
Напишите функцию для проверки, является ли строка палиндромом. Палиндром — это слово или фраза, которые одинаково читаются слева направо и справа налево. Примеры палиндромов — число 101, слово «топот», фраза «А роза упала на лапу Азора».
#задача #coding
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6
Создайте функцию, которая будет принимать строку (имя и фамилию человека) и возвращать другую строку, где имя и фамилия будут идти в другом порядке.
name_shuffle("Donald Trump") ➞ "Trump Donald"
name_shuffle("Rosie O'Donnell") ➞ "O'Donnell Rosie"
name_shuffle("Seymour Butts") ➞ "Butts Seymour"
#задача #coding
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥3🤬2
Напишите функцию, которая будет принимать число и возвращать его в виде денежной суммы в долларах (и центах) США.
dolla_dolla_bills(10) ➞ "$10.00"
dolla_dolla_bills(1000000) ➞ "$1,000,000.00"
dolla_dolla_bills(-314159.2653) ➞ "-$314,159.27"
dolla_dolla_bills(-56.99) ➞ "-$56.99"
🌟 Решение на нашем сайте.
#задача #coding
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤3
Напишите функцию, которая будет принимать дату в строковом формате и возвращать дату на неделю позже.
week_after("12/03/2020") ➞ "19/03/2020"
week_after("21/12/1989") ➞ "28/12/1989"
week_after("01/01/2000") ➞ "08/01/2000"
⭐️ Решение на нашем сайте.
#задача #coding
Please open Telegram to view this post
VIEW IN TELEGRAM
🥱2👍1
Напишите функцию, которая будет принимать списки чисел в произвольном количестве и конкатенировать их. Функция должна возвращать общий список из всех чисел.
concat([1, 2, 3], [4, 5], [6, 7])
➞ [1, 2, 3, 4, 5, 6, 7]
concat([1], [2], [3], [4], [5], [6], [7])
➞ [1, 2, 3, 4, 5, 6, 7]
concat([1, 2], [3, 4])
➞ [1, 2, 3, 4]
concat([4, 4, 4, 4, 4])
➞ [4, 4, 4, 4, 4]
⭐️ Решение на нашем сайте.
#задача #coding
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Напишите функцию, которая будет принимать начальное и конечное значения диапазона (
start_of_range
и end_of_range
) и возвращать список всех чисел, входящих в этот диапазон.reversible_inclusive_list(1, 5)
➞ [1, 2, 3, 4, 5]
reversible_inclusive_list(2, 8)
➞ [2, 3, 4, 5, 6, 7, 8]
reversible_inclusive_list(10, 20)
➞ [10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
reversible_inclusive_list(24, 17)
➞ [24, 23, 22, 21, 20, 19, 18, 17]
⭐️ Решение на нашем сайте.
#задача #coding
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5
Представьте, что у вас есть полоска квадратиков, которые нужно закрасить разными цветами в соответствии с заданным паттерном. Квадратики нужно закрашивать последовательно, т. е. если следующий квадрат другого цвета, вам нужно поменять карандаш.
Напишите функцию, которая будет принимать список цветов
cols
и возвращать время (в секундах), необходимое для закрашивания всего паттерна. При этом:color_pattern_times(["Red", "Blue", "Red", "Blue", "Red"]) ➞ 14
# Тут 5 цветов. На закрашивание уйдет по 2 с на каждый (2 x 5 = 10).
# Карандаш придется сменить 4 раза, каждая смена займет секунду (1 x 4 = 4).
# 10 + 4 = 14
color_pattern_times(["Blue"]) ➞ 2
color_pattern_times(["Red", "Yellow", "Green", "Blue"]) ➞ 11
color_pattern_times(["Blue", "Blue", "Blue", "Red", "Red", "Red"]) ➞ 13
⭐️ Решение на нашем сайте.
#задача #coding
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7
Напишите функцию, которая:
validate_spelling("C. Y. T. O. P. L. A. S. M. Cytoplasm?")
➞ True
validate_spelling("P. H. A. R. A. O. H. Pharaoh!")
➞ True
validate_spelling("H. A. N. K. E. R. C. H. E. I. F. Handkerchief.")
➞ False
⭐️ Решение на нашем сайте.
#задача #coding
Please open Telegram to view this post
VIEW IN TELEGRAM
👌3❤2
Представьте, что в вашей машине есть встроенный тайм-трекер, который отсчитывает длительность вашей поездки в минутах. На старте на нем стоит время 00:00.
Напишите функцию, которая будет принимать длительность поездки в минутах (
n
) и высчитывать время окончания поездки. Возвращать функция должна сумму цифр, которые будут высвечиваться на тайм-трекере на финише при заданной длительности поездки.car_timer(240) ➞ 4
# Со времени 00:00 прошло 240 минут, текущее время - 04:00
# Сумма цифр на трекере - 0 + 4 + 0 + 0 = 4
car_timer(14) ➞ 5
# Сумма цифр - 0 + 0 + 1 + 4
car_timer(808) ➞ 14
⭐️ Решение на нашем сайте.
#задача #coding
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Напишите функцию для поиска самого большого числа в списке целых чисел.
max()
не используйте).find_highest([-1, 3, 5, 6, 99, 12, 2]) ➞ 99
find_highest([0, 12, 4, 87]) ➞ 87
find_highest([8]) ➞ 8
⭐️ Решение на нашем сайте.
#задача #coding
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🔥1
Напишите функцию, которая рекурсивно вернет количество гласных в строке.
vowels("apple") -> 2
vowels("cheesecake") -> 5
vowels("bbb") -> 0
vowels("") -> 0
#задача #coding
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Напишите функцию, которая будет принимать размеры кирпича (высоту (
a
), ширину (b
) и толщину (c
)), а также размеры отверстия (ширину (w
) и высоту (h
)) и проверять, можно ли вставить такой кирпич в такое отверстие.does_brick_fit(1, 1, 1, 1, 1) ➞ True
does_brick_fit(1, 2, 1, 1, 1) ➞ True
does_brick_fit(1, 2, 2, 1, 1) ➞ False
⭐️ Решение на нашем сайте.
#задача #coding
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Напишите функцию, которая будет принимать два списка чисел (вложенный и обычный) и проверять, все ли числа в подсписках вложенного принадлежат множеству чисел второго, обычного списка.
validate_subsets([[1, 2], [2, 3], [1, 3]], [1, 2, 3])
➞ True
validate_subsets([[1, 2, 3], [2], [3], []], [1, 2, 3])
➞ True
validate_subsets([[1, 2], [2, 3], [1, 4]], [1, 2, 3])
➞ False
validate_subsets([[1, 2, 3, 4]], [1, 2, 3])
➞ False
⭐️ Решение на нашем сайте.
#задача #coding
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Напишите функцию, которая будет принимать строку — диапазон букв английского алфавита. Функция должна возвращать строку из всех букв этого диапазона. Если в диапазоне заданы заглавные буквы, в результирующей строке тоже должны быть заглавные.
gimme_the_letters("a-z") ➞ "abcdefghijklmnopqrstuvwxyz"
gimme_the_letters("h-o") ➞ "hijklmno"
gimme_the_letters("Q-Z") ➞ "QRSTUVWXYZ"
gimme_the_letters("J-J") ➞ "J"
⭐️ Решение на нашем сайте.
#задача #coding
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Олегу не хочется становиться старше, поэтому он решил праздновать только свое 20-летие (ну и 21 год тоже, ладно уж). Это возможно, если применить некоторые математические навыки. Нужно просто подобрать подходящее основание числа!
Например, если сейчас Олегу 22 года, это 20 с основанием 11. Аналогично 65 лет — это ровно 21 год с основанием 32. И так далее.
Создайте функцию, которая будет принимать текущий возраст age и возвращать «нужный» возраст (20 лет или 21 год), а также основание числа в том же формате, что в примерах.
happy_birthday(22) ➞ "Oleg is just 20, in base 11!"
happy_birthday(65) ➞ "Oleg is just 21, in base 32!"
happy_birthday(83) ➞ "Oleg is just 21, in base 41!"
#задача #coding
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1