मान लीजिए कि हमारे पास संख्याओं की एक सूची है जिसे अंक कहा जाता है, अब एक ऑपरेशन पर विचार करें जहां हम किसी तत्व को किसी भी मूल्य पर अपडेट कर सकते हैं। हम ऐसे अधिकतम 3 ऑपरेशन कर सकते हैं, हमें अंकों में अधिकतम और न्यूनतम मान के बीच परिणामी न्यूनतम अंतर को खोजना होगा।
इसलिए, यदि इनपुट अंकों की तरह है =[2, 3, 4, 5, 6, 7], तो आउटपुट 2 होगा, क्योंकि हम सूची को [4, 3, 4, 5, 4, 4] में बदल सकते हैं। और फिर 5 - 3 =2.
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- यदि अंकों का आकार <=4, तो
- वापसी 0
- n :=अंकों का आकार
- सूची संख्या क्रमित करें
- अंकों के बीच के अंतर का न्यूनतम लौटाएं[n-4 + i] - nums[i] सभी i के लिए 0 से 3 की सीमा में
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
उदाहरण
class Solution: def solve(self, nums): if len(nums) <= 4: return 0 nums.sort() return min(nums[-4 + i] - nums[i] for i in range(4)) ob = Solution() nums = [2, 3, 4, 5, 6, 7] print(ob.solve(nums))
इनपुट
[2, 3, 4, 5, 6, 7]
आउटपुट
2