Share This
Связаться со мной
Крути в низ
Categories
//Сколько животных? Задача на написание кода на Python

Сколько животных? Задача на написание кода на Python

29.10.2021Category : Python

Кодинг-марафон. Задача № 7.

Фермеру нужна ваша помощь, чтобы узнать количество животных, спрятанных в заданной строке txt.

У нас есть список названий животных:

animals = ["dog", "cat", "bat", "cock", "cow", "pig",            "fox", "ant", "bird", "lion", "wolf", "deer", "bear",            "frog", "hen", "mole", "duck", "goat"]

Напишите функцию, которая будет принимать строку txt и возвращать максимальное количество названий животных, которые возможно собрать из символов строки.

Пример

txt = "goatcode" count_animals(txt) ➞ 2  # первое животное = "dog" # оставшиеся символы в строке = "atcoe", # второе животное = "cat". # count = 2 (верно)  # если взять  сперва  "goat",  # оставшиеся символы в строке = "code", # т.е. больше нельзя составить имен животных # count = 1 (неверно)

Еще примеры

count_animals("goatcode") ➞ 2 # "dog", "cat"  count_animals("cockdogwdufrbir") ➞ 4 # "cow", "duck", "frog", "bird"  count_animals("dogdogdogdogdog") ➞ 5

Решение

animals = ["dog", "cat", "bat", "cock", "cow", "pig",            "fox", "ant", "bird", "lion", "wolf", "deer", "bear",            "frog", "hen", "mole", "duck", "goat"]   def count_animals(txt):     counts = []      def f(t, c):         for a in animals:             s = t             for x in a: s = s.replace(x, "", 1)             if len(s) + len(a) == len(t): f(s, c + 1)         counts.append(c)      f(txt, 0)     return max(counts)

skolko zhivotnyh zadacha na napisanie koda na python f855065 - Сколько животных? Задача на написание кода на Python

Марк Лутц «Изучаем Python»

Скачивайте книгу у нас в телеграм

Скачать ×

  • 0 views
  • 0 Comment

Leave a Reply

Ваш адрес email не будет опубликован.

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Свежие комментарии

    Рубрики

    About Author 01.

    blank
    Roman Spiridonov

    Моя специальность - Back-end Developer, Software Engineer Python. Мне 39 лет, я работаю в области информационных технологий более 5 лет. Опыт программирования на Python более 3 лет. На Django более 2 лет.

    Categories 05.

    © Speccy 2022 / All rights reserved

    Связаться со мной
    Close