Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> JavaScript

JavaScript में अभिव्यंजक शब्द समस्या का मामला


कभी-कभी लोग अतिरिक्त भावना दर्शाने के लिए अक्षरों को दोहराते हैं, जैसे "hello" → "heeellooo", "hi" → "hiiii"। इन स्ट्रिंग्स जैसे "heeellooo" में, हमारे पास आसन्न अक्षरों के समूह होते हैं जो सभी समान होते हैं: "h", "eee", "ll", "ooo"।

किसी दी गई स्ट्रिंग S के लिए, एक क्वेरी शब्द स्ट्रेची है यदि इसे विस्तार ऑपरेशन के किसी भी संख्या में अनुप्रयोगों द्वारा S के बराबर बनाया जा सकता है: अक्षरों c से बने एक समूह को चुनें, और समूह में कुछ अक्षर c जोड़ें ताकि समूह का आकार 3 या अधिक हो।

उदाहरण के लिए, "hello" से शुरू करके, हम समूह "o" पर विस्तार करके "hellooo" प्राप्त कर सकते हैं, लेकिन हम "helloo" प्राप्त नहीं कर सकते क्योंकि समूह "oo" का आकार 3 से कम है। 또한, हम "ll" → "lllll" जैसे एक और विस्तार करके "helllllooo" प्राप्त कर सकते हैं। यदि S = "helllllooo", तो क्वेरी शब्द "hello" स्ट्रेची होगा क्योंकि इन दो विस्तार ऑपरेशन्स के कारण: query = "hello" → "hellooo" → "helllllooo" = S।

क्वेरी शब्दों की एक सूची दिए जाने पर, हमें स्ट्रेची शब्दों की संख्या वापस करनी आवश्यक है।

उदाहरण के लिए −

यदि इनपुट स्ट्रिंग है −

const str = 'heeellooo';

और शब्दों की सूची है −

const words = ["hello", "hi", "helo"];

और आउटपुट होना चाहिए −

const output = 1

उदाहरण

इसके लिए कोड होगा −

const str = 'heeellooo'; const words = ["hello", "hi", "helo"]; const extraWords = (str, words) => {     let count = 0;     for (let w of words) {       let i = 0;       let j = 0;       for (; i < str.length && j < w.length && w[j] === str[i];) {         let lenS = 1;         let lenW = 1;         for (; i+lenS < str.length && str[i+lenS] === str[i]; lenS++);         for (; j+lenW < w.length && w[j+lenW] === w[j]; lenW++);         if (lenS < lenW || lenS > lenW && lenS < 3) break;         i += lenS;         j += lenW;       }       if (i === str.length && j === w.length) {         count++;       }     }     return count; } console.log(extraWords(str, words));

आउटपुट

और कंसोल में आउटपुट होगा −

1

  1. - JavaScript में मीटिंग रूम 2 समस्या

    हमें सरणियों की एक सरणी दी जाएगी, प्रत्येक उप-सरणी में ठीक दो तत्व होते हैं जो एक मीटिंग के प्रारंभ और समाप्ति समय को दर्शाते हैं। हमारे फ़ंक्शन का कार्य उस अधिकतम संख्या को ढूंढना है जो एक व्यक्ति समय के टकराव से बचते हुए मीटिंग ले सकता है। फ़ंक्शन को अंत में यह संख्या लौटानी चाहिए। उदाहरण यदि मीटि

  1. - JavaScript में केले वितरण समस्या

    समस्या मान लीजिए n लोग एक कतार में खड़े हैं, हम लोगों को निम्न तरीके से केले वितरित करना चाहते हैं - हम पहले व्यक्ति को 1 केला, दूसरे को 2 केले, और इसी तरह अंतिम व्यक्ति को n केले देते हैं। फिर, हम पंक्ति की शुरुआत में वापस जाते हैं, पहले व्यक्ति को n+1 केले, दूसरे को n+2 केले, और इसी तरह अंतिम व्

  1. - JavaScript में स्ट्रिंग में मौजूद शब्दों को उल्टा करना

    समस्या हमें एक JavaScript फ़ंक्शन लिखना है जो एक स्ट्रिंग लेता है जो एक वाक्य का प्रतिनिधित्व करती है। हमारे फ़ंक्शन को स्ट्रिंग में मौजूद शब्दों के क्रम को उल्टा करना चाहिए और नई स्ट्रिंग वापस करनी चाहिए। इसका मतलब है कि अंतिम शब्द पहला बनना चाहिए, दूसरा अंतिम दूसरा होना चाहिए और इसी तरह। उदाहरण