Please open Telegram to view this post
VIEW IN TELEGRAM
Дан список чисел. Все числа целые, не отрицательные. Количество чисел четное.
Напишите функцию, которая будет делить этот список пополам, определять суммы чисел в половинах списка и сравнивать их.
Функция должна возвращать новый список, в котором половина чисел, сумма которых оказалась меньше, заменяется числами из другой половины.
Если сумма чисел в обеих половинах одинакова, функция должна вернуть исходный список.
balanced([1, 2, 4, 6, 3, 1])
➞ [6, 3, 1, 6, 3, 1]
# 1 + 2 + 4 < 6 + 3 + 1
# Итоговый список [6, 3, 1, 6, 3, 1]
balanced([88, 3, 27, 5, 9, 0, 13, 10])
➞ [88, 3, 27, 5, 88, 3, 27, 5]
# 88 + 3 + 27 + 5 > 9 + 0 + 13 + 10
# Итоговый список [88, 3, 27, 5, 88, 3, 27, 5]
balanced([7, 5, 2, 6, 1, 0, 1, 5, 2, 7, 0, 6])
➞ [7, 5, 2, 6, 1, 0, 1, 5, 2, 7, 0, 6]
# 7 + 5 + 2 + 6 + 1 + 0 = 1 + 5 + 2 + 7 + 0 + 6
# Итоговый список [7, 5, 2, 6, 1, 0, 1, 5, 2, 7, 0, 6]
⭐️ Решение на нашем сайте.
#задача #coding
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Изучили базу по Python и не знаете, как кодить еще лучше?
✅ Пройдите бесплатный мини-курс по настройке инструментов Python
Рассказываем, что изучать после основ и как не зациклиться на типовых навыках на старте. В программе курса:
🔸 освоим Python-инструменты для упрощения работы с кодом: SonarLint, Myry и другие;
🔸 протестируем библиотеку Tkinter, чтобы создавать приложения с графическим интерфейсом;
🔸 расскажем, как парсить данные с веб-сайтов и закрепить полученные знания на практике.
Все материалы бесплатные. Проходите курс в комфортном темпе в Академии Selectel: https://slc.tl/exlo9?2W5zFGw6UHE
✅ Пройдите бесплатный мини-курс по настройке инструментов Python
Рассказываем, что изучать после основ и как не зациклиться на типовых навыках на старте. В программе курса:
🔸 освоим Python-инструменты для упрощения работы с кодом: SonarLint, Myry и другие;
🔸 протестируем библиотеку Tkinter, чтобы создавать приложения с графическим интерфейсом;
🔸 расскажем, как парсить данные с веб-сайтов и закрепить полученные знания на практике.
Все материалы бесплатные. Проходите курс в комфортном темпе в Академии Selectel: https://slc.tl/exlo9?2W5zFGw6UHE
❤4
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤2
Please open Telegram to view this post
VIEW IN TELEGRAM
Адам и Ева играют в «камень, ножницы, бумага» и уже сыграли 10 раз. Известно следующее:
Кто выигрывает и с каким счетом?
#логическаязадача
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2🤔2
reduce принимает функцию и итерируемый объект в качестве параметров и применяет полученную функцию к парам значений из итерируемого объекта, пока не останется только одно значение.help().enumerate. Этот объект возвращается в формате пар ключ-значение, где ключи — это соответствующие индексы элементов, а значения — сами элементы из переданного набора данных.map() используется для применения функции к каждому элементу итерируемого объекта (например, списка или словаря) и возврата нового итератора для получения результатов.lower() — один из многих встроенных в Python методов для работы со строками. С его помощью можно переводить строки в нижний регистр.Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤3
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1👌1
return_unique([1, 9, 8, 8, 7, 6, 1, 6]) ➞ [9, 7]
return_unique([5, 5, 2, 4, 4, 4, 9, 9, 9, 1]) ➞ [2, 1]
return_unique([9, 5, 6, 8, 7, 7, 1, 1, 1, 1, 1, 9, 8]) ➞ [5, 6]
✅ Решение на нашем сайте.
#задача #coding
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Визуализация бесконечного цикла на Python
😁28🔥11❤🔥4❤3😍2
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Двоих людей обвиняют в совместном преступлении. Если оба признают себя виновными, каждый получит легкое наказание. Если это сделает один, а второй нет, то первого освободят, а второго подвергнут суровому наказанию. Если оба не признают своей вины, их обоих освободят от наказания.
Почему с точки зрения отдельного обвиняемого лучше признаться, а с точки зрения обоих - не делать этого?
Излагайте свои рассуждения в комментариях!
#логическаязадача
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1
Решив таким образом, оба обвиняемых признают свою вину. В результате они оба получат наказание, хотя и легкое. А могли бы быть освобождены, если бы оба не признали своей вины.
Дилемма заключённого, лежащая в основе этой задачи, - фундаментальная проблема в теории игр. Согласно ей рациональные игроки не всегда будут сотрудничать друг с другом, даже если это в их интересах.
#логическаязадача
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7
Please open Telegram to view this post
VIEW IN TELEGRAM
Задача с кодом. Сиракузская последовательность
Сиракузская последовательность генерируется следующим образом. Берем любое натуральное число
Немецкий математик Коллатц выдвинул гипотезу: какое бы начальное число
Напишите функцию, которая будет принимать в качестве аргумента число и возвращать кортеж из двух элементов: количества шагов сиракузской последовательности для переданного числа и наибольшее число в этой последовательности.
Примеры:
Решение на нашем сайте.
#задача #coding
Сиракузская последовательность генерируется следующим образом. Берем любое натуральное число
n. Если оно четное, то делим его на 2, а если нечетное, то умножаем на 3 и прибавляем 1 (получаем 3n + 1). Над полученным числом выполняем те же самые действия, и так далее.Немецкий математик Коллатц выдвинул гипотезу: какое бы начальное число
n мы ни взяли, рано или поздно мы получим единицу.Напишите функцию, которая будет принимать в качестве аргумента число и возвращать кортеж из двух элементов: количества шагов сиракузской последовательности для переданного числа и наибольшее число в этой последовательности.
Примеры:
collatz(2) ➞ (2, 2)
# seq = [2, 1]
collatz(3) ➞ (8, 16)
# seq = [3, 10, 5, 16, 8, 4, 2, 1]
collatz(7) ➞ (17, 52)
# seq = [7, 22, 11, 34, 17, 52, 26, 13, 40, 20, 10, 5, 16, 8, 4, 2, 1]
collatz(8) ➞ (4, 8)
# seq = [8, 4, 2, 1]
Решение на нашем сайте.
#задача #coding
❤1👏1