Джерело:
Хабрахабр:
Дата публікації:
31/07/2024 16:00
Постійна адреса новини:
http://www.vsinovyny.com/11176779
31/07/2024 16:00 // Хабрахабр:

У меня есть хобби — решать задачи LeetCode непредназначенным для этого образом, часто при помощи запутанных однострочников. Такие самостоятельно накладываемые ограничения делают задачки интереснее и заставляют искать нестандартные решения.
Одним из ежедневных челленджей LeetCode была такая задача (я немного упростил её для понятности):
Есть список из уникальных строк битов, каждая из которых имеет длину . Сгенерировать новую строку длиной , отсутствующую в этом списке.
"010", "110", "111", то возможным решением будет "001". Задача с LeetCode имеет большой набор тестов — 183 тестовых сценариев с , а точную формулировку задачи можно найти здесь.class Solution:
def findDifferentBinaryString(self, nums: List[str]) -> str:
random.seed((69299878 + sum(ord(c)*(i*j+111) for (i, n) in enumerate(nums) for (j, c) in enumerate(n))) % 999999999)
return ''.join(random.choice('01') for _ in nums)| « |
Наступна новина з архіву Алекс Йи завоевал золотую медаль на Олимпийских играх-2024 в мужском триатлоне |
Попередня новина з архіву [Перевод] Думаете, вы всё знаете о box shadows? |
» | |
|
|
||||