ধরুন আমাদের একটি স্ট্রিং s আছে, এই স্ট্রিংটি "R" এবং "L" নিয়ে গঠিত, আমাদের ন্যূনতম সংখ্যক অক্ষর মুছে ফেলতে হবে যাতে কোনো ধারাবাহিক "R" এবং কোনো ধারাবাহিক "L" না থাকে।
সুতরাং, ইনপুট যদি "LLLRLRR" এর মত হয়, তাহলে আউটপুট হবে "LRLR"
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
- দেখা হয়েছে :=s এর প্রথম অক্ষর
- উত্তর :=s এর প্রথম অক্ষর
- প্রতিটি অক্ষরের জন্য i সূচক 1 থেকে s এর শেষ পর্যন্ত, করুন
- যদি আমি দেখা মত না হয়, তাহলে
- উত্তর :=ans + i
- দেখেছি :=i
- যদি আমি দেখা মত না হয়, তাহলে
- উত্তর ফেরত দিন
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
উদাহরণ
class Solution: def solve(self, s): seen = s[0] ans = s[0] for i in s[1:]: if i != seen: ans += i seen = i return ans ob = Solution() print(ob.solve("LLLRLRR"))
ইনপুট
"LLLRLRR"
আউটপুট
LRLR