Size: a a a

Хирьянов Т.Ф., Практика программирования на Python 3 (2019)

2020 June 14

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Кирилл Картвелишвили
мне кажется что нужно попросту посчитать кол-во чётных и кол-во кратных пяти, перемножить их и поделить на два, и по правилу умножения комбинаторики количество способов выбрать одно из чётных и затем одно из кратных пяти это просто n * m
пока не нашёл контрпримера, кажется работает
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
я даже кажется смогу доказать этот факт.
пусть A - множество натуральных чисел определённой длинны.
тогда количество пар чисел кратных 10 будет равно произведению m на k, где m и k количество чётных и кратных 5 чисел множества A соответственно.
доказательство.
10 = 2 * 5
чтобы число делилось на 10, нужно чтобы среди его делителей было хотя бы одно чётное и хотя бы одно кратное пяти число, во всех других случаях - число на 10 не делится. значит если мы говорим про произведение двух чисел, то оно делится на 10 тогда и только тогда, если одно из этих чисел - чётное, а другое - кратное пяти. собственно гипотеза доказана ору чем я блин занимаюсь ахаха
источник

l

linnadd in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
ахахахах мощно.
теперь может и убедил
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
прикольно то, что таким же методом можно доказать и не только для 10, просто раскладываем то число, что хотим проверить, на простые множители, а дальше всё аналогично
источник

l

linnadd in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
n = int(input())
even = 0
n5 = 0
n0 = 0
for i in range(n):
 num = int(input())
 if num % 2 == 0:
   if num % 10 == 0:
     n0 += 1
   else:
     even += 1
 elif num % 10 == 5:
   n5 += 1
first = n5 * even
second = (n0 * (n-n0)) + ((n0*(n0-1))//2)
print(first + second)
источник

l

linnadd in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Кирилл Картвелишвили
прикольно то, что таким же методом можно доказать и не только для 10, просто раскладываем то число, что хотим проверить, на простые множители, а дальше всё аналогично
короче я не так сделал, как ты сказал
источник

l

linnadd in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
но оно работает)
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
жесть какая-то, ну работает - не трогай
источник

l

linnadd in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Кирилл Картвелишвили
жесть какая-то, ну работает - не трогай
ахаха да!
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
я не знаю на сколько на егэ сильно придираются ко всяким мелочам, мне это ещё предстоит узнать
источник

l

linnadd in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
ну там надл перед программой еще написать хорошо че ты делаешь вообще
источник

l

linnadd in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
а то если писать как я, никто не поймет в жизни)
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
ору я бы им влепил своё гениальное доказательство 😎
источник

l

linnadd in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
пост скриптум
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
кстати, одно замечание. часто замечаю такую вещь типа for i in range(n), а после в цикле переменная i не используется, в таких случаях лучше писать for _ in range(n), лодеш - допустимое имя переменной, но стандарт pep8, обговаривает, что его лучше зарезервировать для чего-то, что ты не собираешься использовать. такой цикл как раз явный пример. или ещё например какой-то срез где нам нужно получить первый и последний элемент.
tup = (1, 2, 3, 4, 5)
мы можем сделать так:
first = tup[0]
last = tup[-1]
но можно покрасивше:
first, *_, last = tup
фактически у нас здесь создаться кортеж _, но использовать мы его конечно не будем, и на самом деле питон это поймёт и даже хранить его в памяти не будет, так что за неэффективность по памяти и скорости можно не беспокоиться
источник

l

linnadd in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
интересно, спасибо
источник

😍

😍 in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
так и должно быть? класс вызывается сам по себе? я не создавал экземпляр класса
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
ну класс это же тоже объект. питон его должен создать
источник

😍

😍 in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
хм вот поэтому он и не видит кавнас(
источник

M

Mikhail G. in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
print('Privet dorogoy', n, 'medved')
Как можно вывести n чтобы вывелось ее значения, но она сама была в кавычках?
источник