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

JavaScript में ब्रैकेट का स्कोर ढूंढना

समस्या

हमें एक JavaScript फ़ंक्शन लिखना है जो एक संतुलित स्क्वायर ब्रैकेट स्ट्रिंग, str, को पहला और एकमात्र तर्क के रूप में लेता है।

हमारे फ़ंक्शन को निम्नलिखित नियम के आधार पर स्ट्रिंग का स्कोर गणना करके वापस करना चाहिए -

  • [] का स्कोर 1 है
  • AB का स्कोर A + B है, जहां A और B संतुलित ब्रैकेट स्ट्रिंग्स हैं।
  • [A] का स्कोर 2 * A है, जहां A एक संतुलित ब्रैकेट स्ट्रिंग है।

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

इनपुट

const str = '[][]';

आउटपुट

const output = 2;

उदाहरण

निम्नलिखित कोड है -

const findScore = (str = '') => {
  const arr = [];
  for (const char of str) {
    arr.push(char);
    while (arr[arr.length - 1] === ']') {
      arr.pop();
      if (arr[arr.length - 1] === '[') {
        arr.pop();
        arr.push(1);
      } else {
        let num = arr.pop();
        while (arr[arr.length - 1] >= 1) {
          num += arr.pop();
        }
        arr.pop();
        arr.push(2 * num);
      }
    }
  }
  return arr.reduce((acc, a) => acc + a, 0);
};
console.log(findScore(str));

आउटपुट

2
  1. - JavaScript में केंद्रीय रूप से चोटी वाली सरणी की चोटी ढूंढना

    केंद्रीय रूप से चोटी वाली सरणी हम एक सरणी arr को केंद्रीय रूप से चोटी वाली सरणी कहते हैं यदि निम्नलिखित गुण लागू होते हैं - = 3 कुछ i मौजूद है जहां 0 < i < arr.length - 1 जैसे कि arr[0] < arr[1] < ... arr[i-1] < arr[i] arr[arr.length - 1] समस्या हमें एक JavaScript फ़ंक्शन लिखना है जो संख्याओं

  1. - JavaScript में सरणी का माध्यिका इंडेक्स ढूंढना

    समस्या हमें एक JavaScript फ़ंक्शन लिखना है जो एक सरणी, arr, लेता है जो एक-आयामी स्थान में विभिन्न क्षुद्रग्रहों की स्थितियों को दर्शाती है। प्रत्येक क्षुद्रग्रह के लिए, निरपेक्ष मान उसके आकार को दर्शाता है, और चिह्न उसकी दिशा को दर्शाता है (धनात्मक का अर्थ दाएं, ऋणात्मक का अर्थ बाएं)। प्रत्येक क्षुद

  1. - JavaScript में सबसे लंबी लगातार जोड़ श्रृंखला ढूंढना

    समस्याहमें एक JavaScript फ़ंक्शन लिखना है जो संख्याओं के जोड़े की एक सरणी arr को एकमात्र आर्गुमेंट के रूप में लेता है। प्रत्येक जोड़े में, पहली संख्या हमेशा दूसरी संख्या से छोटी होती है।अब, हम एक जोड़ी (c, d) को परिभाषित करते हैं जो दूसरी जोड़ी (a, b) का अनुसरण कर सकती है यदि और केवल यदि b < c। इस त