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

जावास्क्रिप्ट में 0 और 1 का उपयोग करके स्ट्रिंग बनाना

<घंटा/>

समस्या

हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना आवश्यक है जो स्ट्रिंग्स की एक सरणी लेता है, एआर, केवल पहले तर्क के रूप में 0 और 1 का उपयोग करके गठित।

फ़ंक्शन दो संख्याओं को दूसरे और तीसरे तर्क के रूप में लेता है, m और क्रमशः। हमारे फ़ंक्शन का कार्य यह पता लगाना है कि अधिकतम m 0s और n 1s का उपयोग करके सरणी arr से कितने तार बनाए जा सकते हैं।

उदाहरण के लिए, यदि फ़ंक्शन का इनपुट है -

const arr = ["10", "0001", "111001", "1", "0"];
const m = 5, n = 3;

तब आउटपुट होना चाहिए -

const output = 4;

आउटपुट स्पष्टीकरण:

कुल 4 स्ट्रिंग्स हैं जो 5 0 और 3 1 एस के उपयोग से बनाई जा सकती हैं, जो हैं -

“10,”0001”,”1”,”0”

उदाहरण

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

const arr = ["10", "0001", "111001", "1", "0"];
const m = 5, n = 3;
const findAllStrings = (arr = [], m = 1, n = 1) => {
   const getCount = str => str.split('').reduce((acc, cur) => {
      cur === '0' ? acc.zeros++ : acc.ones++;
      return acc;
   }, {zeros:0, ones:0});
   const dp = Array.from({length: m+1}, () => Array(n+1).fill(0));
   for(let i = 0; i < arr.length; i++) {
      const {zeros, ones} = getCount(arr[i]);
      for(let j = m; j >= zeros; j--) {
         for(let k = n; k >= ones; k--) {
            dp[j][k] = Math.max(dp[j-zeros][k-ones]+1, dp[j][k]);
         }
      }
   }
   return dp[m][n]
};
console.log(findAllStrings(arr, m, n));

आउटपुट

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

4

  1. जावास्क्रिप्ट में टेक्स्टडिकोडर और टेक्स्ट एन्कोडर?

    TextEncoder का उपयोग किसी दिए गए स्ट्रिंग को utf-8 मानक में बदलने के लिए किया जाता है। यह स्ट्रिंग से Uint8Array को फिर से ट्यून करता है। TextDecoder का उपयोग बाइट्स की एक धारा को कोड बिंदुओं की एक धारा में गुप्त करने के लिए किया जाता है। यह UTF-8, ISO-8859-2, KOI8-R, GBK आदि को डिकोड कर सकता है।

  1. जावास्क्रिप्ट का उपयोग करके एक स्ट्रिंग में अक्षरों को उलटना

    समस्या हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो एक स्ट्रिंग, str लेता है, जिसमें अक्षर और कुछ विशेष वर्ण होते हैं। हमारे फ़ंक्शन को इनपुट स्ट्रिंग के आधार पर एक नई स्ट्रिंग लौटानी चाहिए, जहां सभी वर्ण जो अक्षर नहीं हैं, एक ही स्थान पर रहते हैं, और सभी अक्षर अपनी स्थिति को उलट देते हैं। उदाहरण के

  1. जावास्क्रिप्ट में एक स्ट्रिंग के पात्रों को फिर से समूहित करना

    समस्या हमें एक जावास्क्रिप्ट फ़ंक्शन लिखने की आवश्यकता है जो एक स्ट्रिंग str को पहले और एकमात्र तर्क के रूप में लेता है। स्ट्रिंग str में तीन प्रकार के वर्ण हो सकते हैं - अंग्रेजी अक्षर:(ए-जेड), (ए-जेड) अंक:0-9 विशेष वर्ण - शेष सभी वर्ण हमारे फ़ंक्शन को इस स्ट्रिंग के माध्यम से पुनरावृ