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

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

<घंटा/>

कभी-कभी लोग अतिरिक्त भावना का प्रतिनिधित्व करने के लिए अक्षरों को दोहराते हैं, जैसे "हैलो" -> "हीलू", "हाय" -> "हईईआई"। "हीलू" जैसे इन स्ट्रिंग्स में, हमारे पास आसन्न अक्षरों के समूह हैं जो सभी समान हैं:"h", "eee", "ll", "ooo"।

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

उदाहरण के लिए, "हैलो" से शुरू करते हुए, हम "हैलो" प्राप्त करने के लिए समूह "ओ" पर एक एक्सटेंशन कर सकते हैं, लेकिन हमें "हैलो" नहीं मिल सकता है क्योंकि समूह "ओओ" का आकार 3 से कम है। इसके अलावा, हम कर सकते हैं एक अन्य एक्सटेंशन जैसे "ll" −> "llllll" को "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. बैठक कक्ष 2 जावास्क्रिप्ट में समस्या

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

  1. जावास्क्रिप्ट में केले की समस्या का वितरण

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

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

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