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 2020 / All rights reserved

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