Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

पायथन में सभी मानों को समान बनाने के लिए आवश्यक ऑपरेशनों की संख्या गिनने का प्रोग्राम


पूर्णांकों की एक लिस्ट nums दी गई है, आप निम्न ऑपरेशन कर सकते हैं: nums में सबसे बड़ी संख्या चुनें और इसे दूसरी सबसे बड़ी संख्या में बदलें। लिस्ट में सभी पूर्णांकों को समान बनाने के लिए आवश्यक न्यूनतम ऑपरेशनों की संख्या लौटाएं।

उदाहरण के लिए, यदि इनपुट nums = [5, 9, 2] है, तो आउटपुट 3 होगा, क्योंकि पहले 9 चुनें, फिर इसे 5 बनाएं, तो सरणी [5, 5, 2] है, फिर 5 चुनें और 2 बनाएं, [5, 2, 2], फिर 5 चुनें और 2 में बदलें, [2, 2, 2]।

इसे हल करने के लिए, हम निम्न चरणों का पालन करेंगे

  • vals := nums में यूनिक कैरेक्टर की सॉर्ट की गई लिस्ट
  • vtoi := vals में सभी मान v के लिए कुंजी के रूप में और उनके इंडेक्स i के रूप में मान का एक मैप
  • nums में सभी v के लिए vtoi[v] का योग लौटाएं

बेहतर समझ के लिए निम्न कार्यान्वयन देखें

उदाहरण

class Solution:    def solve(self, nums):       vals = sorted(set(nums))       vtoi = {v: i for i, v in enumerate(vals)}       return sum(vtoi[v] for v in nums) ob = Solution() nums = [5, 9, 2] print(ob.solve(nums))

इनपुट

[5, 9, 2]

आउटपुट

3

  1. - पायथन में सही स्थान पर रखे गए तत्वों की संख्या गिनने का प्रोग्राम

    मान लीजिए हमारे पास nums नामक संख्याओं की एक सूची है, हमें उन तत्वों की संख्या ढूंढनी है जो सही इंडेक्स पर मौजूद हैं, जब सूची को क्रमबद्ध किया जाता है। उदाहरण के लिए, यदि इनपुट है [2, 8, 4, 5, 11], तो आउटपुट होगा 2, क्योंकि तत्व 2 और 11 अपनी सही स्थितियों पर हैं। क्रमबद्ध अनुक्रम होगा [2, 4, 5, 8,

  1. - Python में सभी ऐरे तत्वों को बराबर बनाने के लिए आवश्यक ऑपरेशंस की संख्या

    हमें तत्वों का एक ऐरे दिया गया है, और हमें उन सभी को 1 से बढ़ाकर बराबर बनाना है। हमें प्रत्येक चरण में n - 1 तत्व बढ़ाने की अनुमति है। हमारा लक्ष्य सभी ऐरे तत्वों को बराबर बनाने के लिए आवश्यक कुल ऑपरेशंस की संख्या की गणना करना है। उदाहरण के लिए, यदि आप सूची [1, 2, 3] लेते हैं, तो सभी तत्वों को बराब

  1. - पायथन प्रोग्राम: 1 से n तक सभी नंबर्स में टोटल सेट बिट्स गिनना

    एक पॉजिटिव इंटीजर n दिया गया है, फिर हम इसे बाइनरी प्रतिनिधित्व में बदलते हैं और टोटल सेट बिट्स की संख्या गिनते हैं।उदाहरणInput: n=3 Output: 4एल्गोरिदमचरण 1: पॉजिटिव इंटीजर डेटा इनपुट करें। चरण 2: फिर इसे बाइनरी फॉर्म में कन्वर्ट करें। चरण 3: वेरिएबल s = 0 इनिशियलाइज़ करें। चरण 4: हर एलिमेंट को ट्रै