• 1
    डेटा I/O
    • कार्य
  • 2
    शर्तें
    • कार्य
  • 3
    for लूप
    • कार्य
  • 4
    स्ट्रिंग
    • कार्य
  • 5
    while लूप
    • कार्य
  • 6
    सूचियां
    • कार्य
  • 7
    2D मैट्रिक्स
    • कार्य
  • 8
    डिक्शनरी
    • कार्य
  • 9
    सेट
    • कार्य
  • 10
    फ़ंक्शन
    • कार्य
  • к

पाठ 4. Lines

कठिनाई:

иконка человека красный иконка человека белая иконка человека зеленая Pythonlib

कार्य«मीम्स»

💻 Python

चार दोस्त & mdash; रोमा (ITSHNIK), मैक्सिम (रसायनज्ञ), दानिक (डिज़ाइनर) और व्लाद (बहुमुखी व्यक्ति) & mdash; ने मीम्स के आदान-प्रदान के लिए एक सामान्य चैट बनाई। अनुपयुक्त चुटकुलों से एक-दूसरे का काम में ध्यान न भटकाने के लिए, उन्होंने एक बॉट लिखने का फैसला किया, जो स्वचालित रूप से मीम के विषय का निर्धारण करेगा और इसे केवल इच्छुक व्यक्ति को भेजेगा। आपका कार्य & mdash; इस बॉट के लिए एक कोर लिखना।

rn

छँटाई नियम:
आपको इनपुट के रूप में एक पंक्ति मिलती है & mdash; यह मीम का टेक्स्ट है। बॉट को इसका विश्लेषण करना होगा और कुछ अक्षरों की उपलब्धता के आधार पर श्रेणी निर्धारित करनी होगी:

rn
    rn
  1. आईटी-मीम: & nbsp; यदि पंक्ति में सभी अक्षर 'b', 'u', 'g' मौजूद हैं (किसी भी क्रम और मात्रा में)। प्राप्तकर्ता & mdash; & nbsp; रोमा ।
  2. rn
  3. रासायनिक मीम: & nbsp; यदि पंक्ति में सभी अक्षर 'b', 'o', 'o', 'm' मौजूद हैं (अर्थात अक्षर 'o' कम से कम दो बार आना चाहिए)। प्राप्तकर्ता & mdash; & nbsp; मैक्सिम ।
  4. rn
  5. डिज़ाइनर मीम: & nbsp; यदि पंक्ति में सभी अक्षर 'e', 'd', 'i', 't', 's' मौजूद हैं। प्राप्तकर्ता & mdash; & nbsp; दानिक ।
  6. rn
  7. अन्य: & nbsp; यदि मीम उपरोक्त किसी भी श्रेणी में फिट नहीं बैठता है। प्राप्तकर्ता & mdash; & nbsp; व्लाद ।
  8. rn
rn

मुख्य नियम (विरोधों का समाधान):
मीम एक साथ कई श्रेणियों में फिट हो सकता है। इस मामले में, इसे उस व्यक्ति को भेजा जाना चाहिए जिसकी श्रेणी पहले "पूरी" हुई हो। श्रेणी को उस समय "पूर्ण" माना जाता है जब पंक्ति में उसके लिए आवश्यक अंतिम अक्षर मिल जाता है। बॉट को सबसे कम पूर्णता सूचकांक वाली श्रेणी चुननी होगी।

rn

आपको एक प्रोग्राम लिखना होगा जो एक पंक्ति (मीम) स्वीकार करे और प्राप्तकर्ता का नाम प्रदर्शित करे।

इनपुट फॉर्मेट

एक पंक्ति, जो एक 'मीम' है (प्रकार: स्ट्रिंग)।

आउटपुट फॉर्मेट

प्राप्तकर्ता का नाम (प्रकार: स्ट्रिंग)।

उदाहरण

इनपुट

डूबे हुए आइटम

आउटपुट

रोमा

संकेत

There will be no clue here, decide for yourself!

main.py
परीक्षण 1
परीक्षण 2
परीक्षण 3
परीक्षण 4
परीक्षण 5
परीक्षण 6
परीक्षण 7
परीक्षण 8
परीक्षण 9
परीक्षण 10
डेवलपर का समाधान
from collections import Counter

def find_completion_index(meme, required_letters):
    """
    Находит индекс, на котором категория считается "завершенной".
    Возвращает индекс или очень большое число, если категория не подходит.
    """
    # Создаем счетчик необходимых букв (например, для 'boom' -> {'b': 1, 'o': 2, 'm': 1})
    required_counts = Counter(required_letters)
    current_counts = Counter()
    
    # Проверяем, выполнены ли все условия
    def are_requirements_met():
        for char, count in required_counts.items():
            if current_counts[char] < count:
                return False
        return True

    # Идем по строке и считаем буквы
    for i, char in enumerate(meme):
        if char in required_counts:
            current_counts[char] += 1
            # Как только все буквы найдены, возвращаем текущий индекс
            if are_requirements_met():
                return i
    
    # Если цикл закончился, а буквы не найдены, возвращаем "бесконечность"
    return float('inf')

# Получаем текст мема
meme_text = input()

# Создаем список кандидатов с их условиями
candidates = [
    ('Roma', 'bug'),
    ('Maxim', 'boom'),
    ('Danik', 'edits')
]

# Находим "индекс завершения" для каждого кандидата
results = []
for name, letters in candidates:
    index = find_completion_index(meme_text, letters)
    results.append((index, name))

# Находим победителя. Функция min() для кортежей (индекс, имя)
# автоматически выберет тот, у которого первый элемент (индекс) наименьший.
winner_index, winner_name = min(results)

# Если минимальный индекс остался "бесконечным", значит, никто не подошел
if winner_index == float('inf'):
    print("Vlad")
else:
    print(winner_name)

🎉 बधाई! 🎉

आपने कार्य को शानदार ढंग से हल किया! यह कठिन था, लेकिन आपने सही उत्तर खोजा। आप प्रोग्रामिंग में महारत के करीब हैं! ऐसे ही जारी रखें।

AD

विज्ञापन

red-snake blue-snake green-snake

कोड चल रहा है...

AI सहायक

नमस्ते! मैं आपका प्रोग्रामिंग सहायक हूँ। Python के बारे में कोई भी सवाल पूछें — मैं functions, methods समझा सकता हूँ और मौजूदा task में मदद कर सकता हूँ!