प्रौद्योगिकी साझेदारी

LeetCode 290. शब्दप्रतिमानाः

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

LeetCode 290. शब्दप्रतिमानाः

नियमितप्रतिरूपं s तारं च दत्त्वा s समाननियमितप्रतिरूपं अनुसरति वा इति निर्धारयन्तु ।
अत्र अनुपालनं पूर्णमेलनं निर्दिशति यथा, प्रतिमाने प्रत्येकस्य अक्षरस्य तथा स्ट्रिंग् s मध्ये प्रत्येकस्य अरिक्तशब्दस्य मध्ये द्विपक्षीयसंयोजनपत्राचारः भवति ।
उदाहरणम् १ : १.
Input: pattern = “abba”, s = “कुक्कुर बिडाल कुक्कुर”
निर्गमः सत्यम्
उदाहरणम् २ : १.
Input: pattern = “abba”, s = “कुक्कुर बिडालः मत्स्यः”
निर्गमः मिथ्या
उदाहरणम् ३ : १.
Input: pattern = “aaaa”, s = “कुक्कुर बिडाल कुक्कुर”
निर्गमः मिथ्या
संकेत:
१ <= प्रतिमानम्।दीर्घता <= ३००
pattern इत्यत्र केवलं लघु-आङ्ग्ल-अक्षराणि सन्ति
१ <= स.दीर्घता <= ३०००
s इत्यत्र केवलं लघु आङ्ग्लाक्षराणि सन्ति तथा च ' ' इति ।
s इत्यत्र अग्रणीः पश्चात् वा रिक्तस्थानयुग्मः नास्ति
s इत्यस्मिन् प्रत्येकं शब्दं एकेन रिक्तस्थानेन विभक्तं भवति

हैश तालिका, द्विपक्षीयता सम्बन्ध

class Solution:
    def wordPattern(self, pattern: str, s: str) -> bool:
        length = len(pattern)
        sub_strs = s.split()
        if len(pattern) != len(sub_strs):
            return False
        d1, d2 = {}, {}
        for i in range(length):
            if pattern[i] in d1:
                if d1[pattern[i]] != sub_strs[i]:
                    return False
            if sub_strs[i] in d2:
                if d2[sub_strs[i]] != pattern[i]:
                    return False
            d1[pattern[i]] = sub_strs[i]
            d2[sub_strs[i]] = pattern[i]
        return True
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17