Igor
Ладно решаем дейлик ;) https://leetcode.com/problems/search-insert-position/ ыыы return bisect_left(nums, target) и сразу прицепом https://leetcode.com/problems/first-bad-version/ return bisect_left(range(n + 1), True, key=isBadVersion) PS потом еще спрашивают почему вы любите питон ;)
и опять дейлик на метод половинного деления ... https://leetcode.com/problems/single-element-in-a-sorted-array/ return a[bisect_left(range(len(a) // 2), 1, key=lambda i: a[i*2+1] - a[i*2])*2] ну и халявные задачки так сказать для массовки ;) https://leetcode.com/problems/reverse-string/ s[:] = s[::-1] https://leetcode.com/problems/reverse-string-ii/ return ''.join(s[i: i+k][::-1] + s[i+k: i+2*k]for i in range(0, len(s), 2*k)) https://leetcode.com/problems/reverse-words-in-a-string-iii/description/ return ' '.join(w[::-1] for w in s.split()) https://leetcode.com/problems/remove-all-occurrences-of-a-substring/
Сергей
нет?
ловите айпадера
пиво на все бабки
Igor
А без return не работало бы?
что значит не работало бы ;)? работало бы иначе? return early pattern?
Igor
вопрос же не в том работает/не работает, а в формулировке "следовательно в ней нету ключевого слова return."
пиво на все бабки
вопрос же не в том работает/не работает, а в формулировке "следовательно в ней нету ключевого слова return."
да не стоит так цепляться к этой формулировке. Там человек пытался разобраться что такое функции и спрашивал об возвращаемом значении. Не думаю, что стоило объяснять ему все это настолько глубоко. Я бы мог сказать, что можно возвращать условный указатель на void. А зачем? Не думаю, что на данный момент это ему о чем-либо говорило бы. В любом случае, я дал ему такой ответ, который сам хотел бы услышать (будь я на его месте)
Igor
из твоего ответа следует что для функций с возвращаемым значением void нельзя использовать return. Я не думаю что это хороший ответ не зависимо от "глубины погружения" в тему "условный указатель на void" и void это две большие разницы. Мне кажется подобные ответы только создают еще большую "кашу" в голове у новичков.
Andrii
в плюсах как-то если сделать шаблонную функцию типа void и вернуть ее в другой функции типа void, вроде template<typename T> void somefunc(T arg) { return otherfn(arg); } то компиль может даже не заметить... особенно если ее не вызвать. Максимум- варн выдаст при настройках по умолчанию (гсс кланг)
Это стандартное поведение, которое добавили специально, чтобы не делать частичных специализаций шаблонов для void на каждый чих. Поэтому такое поведение очень даже норм, и часто экономит строчки
Andrii
Вообще, когда мы говорим, что функция не возвращает ничего, то это можно перефразировать как «функция не возвращает никакой информации», или она возвращает 0 бит информации. Если у нас нуль бит, то по формуле 2 ** 0 == 1 получаем одно значение. Так что про void можно думать как про тип, для хранения которого надо 0 бит информации, т. е. тип, который хранит одно единственное значение.
Сергей
есть
Xusrav
Здравствуйте, как найти логарифм с значением 2048? Я формулу не могу понять
Xusrav
log2(2048) = ?
かたな
определение логарифма вроде простое...
Igor
11
Xusrav
не знаю как найти, формула какая-та странная
Сергей
ПКМ-Formatting-Spoiler
Xusrav
11
как вы нашли ? формулу можно
かたな
логарифм - это число, которое является степенью основания логарифма для получения значения, стоящего под знаком логарифма
Agent_RBY_
ПКМ-Formatting-Spoiler
Или просто сообщения обернуть в ||
Сергей
как вы нашли ? формулу можно
он математик просто, учебники пишет
Igor
не знаю как найти, формула какая-та странная
если мы говорим о формуле ... целая часть логарифма это позиция старшего бита. в пайтоне что то типа a = 2048 print(a.bit_length() - 1)
Azamat
как вы нашли ? формулу можно
все просто. В какой степени должна быть двойка чтобы получить 2048? Смотришь в таблицу степеней, находишь и вот ответ: 11
Igor
не знаю как найти, формула какая-та странная
давай уже странную формулу ;) а мы ее тебе объясним
Igor
как вы нашли ? формулу можно
как говорил мой свояк ;) "из головы" ...
Xusrav
:D
iren
:D
Так там натуральный логарифм. То есть по основанию е. е=2,71... короче то число из константы
Igor
:D
давай без чатгпт ... в чем состоит задание и что за секретная формула ;)
Xusrav
Вот теперь я понял как находить логарифм, например дан 2048 и нужно найти логарифм нам нужно делить его на 2 до тех пор пока 2048 не станет 1 и после того нам нужно подсчитать те деления которые мы делали пока мы не дошли до 1
Xusrav
вот так как-то
Xusrav
вот теперь я понимаю что такое логарифм, я про это хотел спросить
Igor
Алексей
Чо пишут?
Про программирования сетей
Аки
куда надо вставлять break в пайтоне в цикле while ? пишет либо " 'break' outside loop " либо "unexpected indent"
Igor
Andrii
А теперь, попробуй написать то же самое, только для камень-ножницы-бумага-ящерица-спок.
Аки
А теперь, попробуй написать то же самое, только для камень-ножницы-бумага-ящерица-спок.
я бы с радостью, но ты скажи как сделать так чтобы эта вся штука повторялась даже после окончания программы?
Илья
А теперь, попробуй написать то же самое, только для камень-ножницы-бумага-ящерица-спок.
Чтобы придумал что то интереснее чем if?) как я понял у него и это не пошет
Илья
Ты отступы забыл сделать
Аки
прикол в том что у меня работало все до того как я перенес на первую строку принт, , а не вайл тру
Илья
Это же питон, а у тебя в цикле только импорт рандома
Аки
а что еще надо
Аки
Чтобы программа продолжада выполняться после окончания? Или что?
да, но чтобы надпись "напишите камень ножницы или бумага" не повторялась а толькт вначале была
Аки
я вставил цикл но не работает
iren
я вставил цикл но не работает
Всё, что должно повторяться, должно быть с отступами
Andrii
я вставил цикл но не работает
Попробуй чтобы просто в цикле печатало yes
Andrii
До посинения, уже полезная утилита
Rodion
Можно вопрос. Реализация подобного функционала через массив с вариантами является хорошим тоном или нет. Я имею в виду где результат можно получить varianta[a][b]
Аки
пишет 1 раз ес а дальше просто >>>> >>>> >>>>
Аки
Rodion
я бы с радостью, но ты скажи как сделать так чтобы эта вся штука повторялась даже после окончания программы?
А разве break не останавливает выполнение цикла (я пишу на JS) Просто убери break
Igor
А теперь, попробуй написать то же самое, только для камень-ножницы-бумага-ящерица-спок.
Так красивее) уже вчера подобное обсуждали, лучши насвичкейсить, так панятней
Аки
аааааа теперь понял , я аросто думал он обязательно должен быть
Igor
а зчем ? типа все тоже самое, но условий больше?
Тут как бы намек, что такой код это плохо. Данные не должны быть частью логики, попробуй данные отдельно логика отдельно. Правила игры представить в каком то более другом виде
Igor
а как? типа присвоить названия переменным или что?
Типа сделать таблицу или дикт кто кого побеждает... Профит
Аки
я вообще не знаю что все это значит
Rodion
@flowerycat А что если сделать так? const arr = { "ножницы": { "бумага": true, "камень": false, }, "бумага": { "камень": true, "ножницы": false, }, "камень": { "бумага": false, "ножницы": true, } } $arr[a][b];