কম্পিউটার

জাভাস্ক্রিপ্টে ক্র্যাক অ্যালফাবেটস সমস্যার বিরুদ্ধে লড়াই করে


সমস্যা

একটি পরিস্থিতি বিবেচনা করুন যেখানে দুটি বর্ণমালার সেনাবাহিনী একে অপরের সাথে লড়াই করছে। উভয়ের সৈন্য এবং তাদের ওজন নিম্নরূপ -

টিমএ

<থহেড> <থ>ওজন
সৈনিক
A
1
বি
2
C
3
D
4

টিমবি

<থহেড> <থ>ওজন
সৈনিক
W
1
এক্স
2
Y
3
Z
4

সৈন্যদের ছাড়া, '!' দ্বারা চিহ্নিত ক্ষেত্রটিতে বোমাও রয়েছে এবং এর সংলগ্ন পাশে রাখা সৈন্যদের হত্যাকারী বোমা রয়েছে৷

যেমন:'A!BC'-এর ফলে 'C' হবে এবং '!!CC!!'-এর ফল হবে ''৷

আমাদের ফাংশনটি খুঁজে বের করতে হবে যখন মাঠের সমস্ত বোমা বিস্ফোরিত হবে তখন কোন দল বিজয়ী হবে যদি উভয় দল একই ওজন নিয়ে শেষ হয়।

উদাহরণস্বরূপ, যদি ফাংশনে ইনপুট হয় −

ইনপুট

const str = '!WX!YZ!DC!BA!';

আউটপুট

const output = 'Tie';

আউটপুট ব্যাখ্যা

কারণ সমস্ত বোমা বিস্ফোরিত হওয়ার পরে উভয় দলই একই স্কোর নিয়ে শেষ হবে।

উদাহরণ

নিম্নলিখিত কোড -

const str = '!WX!YZ!DC!BA!';
const stringFight = (str) => {
   const map = {
      'D': 4,'C': 3,'B': 2,'A': 1,
      'Z': -4,'Y': -3,'X': -2,'W': -1
   };
   const arr = [];
   const arr1 = str.split('');
      for(let i=0;i<str.length;i++){

      if(arr1[i-1] !== '!' && arr1[i] !== '!' && arr1[i+1] !== '!'){
         arr.push(arr1[i]);
      };
   };
      const sum = arr.reduce((a, b) => a + (map[b] ? map[b] : 0), 0);
      if(sum < 0){
         return 'Team B';
      if(sum < 0){
         return 'Team B';
      }else if(sum > 0){
         return 'Team A';
      }else{
         return 'Tie';
      };
   };
console.log(stringFight(str));

আউটপুট

Tie

  1. জাভাস্ক্রিপ্ট কনস্ট

  2. জাভাস্ক্রিপ্টে কনস্ট বনাম চলুন।

  3. জাভাস্ক্রিপ্টে বর্ণমালার ক্রমান্বয়ে হ্রাস করা

  4. জাভাস্ক্রিপ্ট ব্যবহার করে একটি স্ট্রিং এ বর্ণমালা উল্টানো