ধরুন আমাদের কাছে সংখ্যা বলা সংখ্যার একটি তালিকা আছে, আমাদের খুঁজে বের করতে হবে যে তালিকাটি পজিটিভ-থেকে-নেগেটিভ বা নেতিবাচক থেকে ইতিবাচক ঢাল থেকে কতবার পরিবর্তিত হয়।
সুতরাং, যদি ইনপুটটি [2, 4, 10, 18, 6, 11, 13] এর মত হয়, তাহলে আউটপুট হবে 2, কারণ এটি 10 এ দিক পরিবর্তন করে (ধনাত্মক থেকে নেতিবাচক) ), এবং তারপর 6 এ (নেতিবাচক থেকে পজিটিভ)।
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
-
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
-
আমি রেঞ্জ 1 থেকে সংখ্যার আকার - 1 এর জন্য, করুন
-
যদি nums[i-1]
nums[i+1] বা nums[i-1]> nums[i] -
গণনা :=গণনা + 1
-
-
-
ফেরত গণনা
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
উদাহরণ
class Solution: def solve(self, nums): count = 0 for i in range(1, len(nums) - 1): if nums[i - 1] < nums[i] > nums[i + 1] or nums[i - 1] > nums[i] < nums[i + 1]: count += 1 return count ob = Solution() print(ob.solve([2, 4, 10, 18, 6, 11, 13]))
ইনপুট
[2, 4, 10, 18, 6, 11, 13]
আউটপুট
2