ধরুন আমাদের কাছে nums এবং value নামক দুটি অ্যারে আছে, উভয়েই পূর্ণসংখ্যা রয়েছে এবং সংখ্যার মান কঠোরভাবে বৃদ্ধি পাচ্ছে এবং তাদের দৈর্ঘ্যও একই। i, j সূচকের জোড়ার জন্য আমাদের v-এর মান খুঁজে বের করতে হবে, যেমন:i ≤ j যা v =মান[i] + মান[j] + nums[j] - nums[i] কে সর্বাধিক করে।
সুতরাং, যদি ইনপুটটি সংখ্যার মত হয় =[1, 2, 7] মান =[-4, 6, 5], তাহলে আউটপুট হবে 16, যদি আমরা পিক i =1 এবং j =2 নিই তাহলে আমরা 6 + 5 পাব। + 7 - 2 =16।
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
-
ans1 :=-inf, ans2 :=-inf
-
আমি 0 থেকে সংখ্যার আকার - 1 এর মধ্যে, কর
-
ans1 :=ans1 এবং (মান[i] - সংখ্যা[i])
-
ans2 :=ans2 এবং (মান[i] + সংখ্যা[i])
-
-
ans1 + ans2
ফেরত দিন
উদাহরণ
আসুন আরও ভালভাবে বোঝার জন্য নিম্নলিখিত বাস্তবায়ন দেখি
from math import inf def solve(nums, values): ans1 = -inf ans2 = -inf for i in range(len(nums)): ans1 = max(ans1, (values[i] - nums[i])) ans2 = max(ans2, (values[i] + nums[i])) return ans1 + ans2 nums = [1, 2, 7] values = [-4, 6, 5] print(solve(nums, values))
ইনপুট
[1, 2, 7], [-4, 6, 5]
আউটপুট
16