কম্পিউটার

জাভাস্ক্রিপ্টে চলাফেরার চূড়ান্ত দিক খোঁজা


সমস্যা

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একক অক্ষর, অ্যাআর, অ্যাসথে প্রথম এবং একমাত্র আর্গুমেন্টের অ্যারে নেয়৷

অ্যারেতে মাত্র 4টি অক্ষর থাকতে পারে, সেগুলি হল −

  • 'N' → মানে উত্তর দিক
  • 'S' → মানে দক্ষিণ দিক
  • 'W' → মানে পশ্চিম দিক
  • 'E' → পূর্ব দিক নির্দেশ করে

প্রতিটি অক্ষর সেই নির্দিষ্ট দিকে একক দূরত্বের একটি সরানো নির্দিষ্ট করে। এবং যদি অ্যারের কোথাও, দুটি বিপরীত দিক, [('S' এবং 'N') বা ('E' এবং 'W')] সংলগ্নভাবে উপস্থিত হয়, তারা একে অপরের গতিবিধি বাতিল করে দেয়। তাই, আমাদের ফাংশনটি পুরো অ্যারের গতিবিধির ফলাফলের দিকনির্দেশ খুঁজে পাওয়ার কথা।

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

const arr = ['N', 'S', 'S', 'E', 'W', 'N', 'W'];

তারপর আউটপুট −

হওয়া উচিত
const output = 'W';

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

'N' এবং 'S' একে অপরকে বাতিল করবে 'E' এবং 'W' একে অপরকে বাতিল করবে এবং তারপরে 'N' এবং 'S'again একে অপরকে বাতিল করবে শুধুমাত্র 'W' কে রেখে যেতে।

উদাহরণ

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

const arr = ['N', 'S', 'S', 'E', 'W', 'N', 'W'];
const cancelDirections = (arr = []) => {

   let str = arr.join('');
   while(str.includes('NS') || str.includes('SN') || str.includes('EW')
|| str.includes('WE')){
      str = str.replace('NS', '');
      str = str.replace('SN', '');
      str = str.replace('EW', '');
      str = str.replace('WE', '');
   };
   return str.split('');
};
console.log(cancelDirections(arr));

আউটপুট

নিম্নোক্ত কনসোল আউটপুট -

['W']

  1. জাভাস্ক্রিপ্টে সব অনন্য পাথ খোঁজা

  2. জাভাস্ক্রিপ্টে সবচেয়ে ছোট ভাল বেস খোঁজা

  3. জাভাস্ক্রিপ্ট ব্যবহার করে স্ট্রিং-এ একটি অক্ষরের অবিলম্বে পরবর্তী অক্ষর খোঁজা

  4. জাভাস্ক্রিপ্টে সময় স্ট্রিং সংশোধন করা হচ্ছে