ধরুন আমাদের কাছে L1 এবং L2 সংখ্যার দুটি তালিকা রয়েছে, প্রতিটি তালিকার দৈর্ঘ্য n এবং প্রতিটি মান তার তালিকার জন্য অনন্য, এবং মানগুলি 1 থেকে n রেঞ্জের মধ্যে রয়েছে, আমাদের L1 রূপান্তর করার জন্য প্রয়োজনীয় সংলগ্ন অদলবদলের ন্যূনতম সংখ্যা খুঁজে বের করতে হবে। L2 থেকে।
সুতরাং, যদি ইনপুটটি L1 =[0, 1, 2, 3] L2 =[2, 0, 1, 3] এর মত হয়, তাহলে আউটপুট হবে 2, যেমন আমরা 1 এবং 2 অদলবদল করতে পারি, L1 হবে [0] , 2, 1, 3], এবং তারপর 0 এবং 2, L1 হবে [2, 0, 1, 3], এটি L2 এর মতই।
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব:
-
উত্তর :=0
-
L2 এ প্রতিটি অনুরোধের জন্য, করুন
-
i :=L1
-এ req-এর সূচক -
L1
থেকে ith উপাদান মুছুন -
ans :=ans + i
-
-
উত্তর ফেরত দিন
আরও ভালভাবে বোঝার জন্য আসুন নিম্নলিখিত বাস্তবায়ন দেখি:
উদাহরণ
class Solution: def solve(self, L1, L2): ans = 0 for req in L2: i = L1.index(req) L1.pop(i) ans += i return ans ob = Solution() L1 = [0, 1, 2, 3] L2 = [2, 0, 1, 3] print(ob.solve(L1, L2))
ইনপুট
[0, 1, 2, 3],[2, 0, 1, 3]
আউটপুট
2