मान लीजिए हमारे पास nums नामक संख्याओं की एक सूची है, अब एक ऑपरेशन पर विचार करें जहां हम एक तत्व को किसी भी मान में अपडेट कर सकते हैं। हम अधिकतम 3 ऐसे ऑपरेशन कर सकते हैं, हमें nums में अधिकतम और न्यूनतम मान के बीच के परिणामी न्यूनतम अंतर को ढूंढना है।
इसलिए, यदि इनपुट nums = [2, 3, 4, 5, 6, 7] जैसा है, तो आउटपुट 2 होगा, क्योंकि हम सूची को [4, 3, 4, 5, 4, 4] में बदल सकते हैं और फिर 5 - 3 = 2।
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे −
- यदि nums का आकार <= 4, तो
- 0 वापस करें
- n := nums का आकार
- सूची nums को सॉर्ट करें
- i के लिए 0 से 3 तक की रेंज में nums[n-4 + i] - nums[i] के अंतर का न्यूनतम वापस करें
बेहतर समझ के लिए निम्नलिखित कार्यान्वयन देखें −
उदाहरण
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