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

दिए गए स्ट्रिंग से सभी संभावित वैध आईडी पता उत्पन्न करने के लिए पायथन प्रोग्राम

तार दिया गया है। स्ट्रिंग में केवल अंक होते हैं। हमारा काम सभी संभावित मान्य आईपी एड्रेस संयोजनों की जांच करना है।

यहां पहले हम स्ट्रिंग की लंबाई की जांच करते हैं और फिर "।" से विभाजित करते हैं। फिर हम "।" के विभिन्न संयोजनों की जांच करते हैं।

उदाहरण

Input : "255011123222"
It's not a valid IP address.
Input : 255011345890
Valid IP address is 255.011.123.222

एल्गोरिदम

Step 1: First check the length of the string.
Step 2: Split the string by ".". We will place 3 dots in the given string. W, X, Y, and Z are numbers from 0-255 the numbers cannot be 0 prefixed unless they are 0.
Step 3: Generating different combinations.
Step 4: Check for the validity of combination.

उदाहरण कोड

# Python code to check valid possible IP 
# Function checks wheather IP digits 
# are valid or not.

def ipvalid(ip): 
   # Spliting by "." 
   ip = ip.split(".") 
      
   # Checking for the corner cases 
   for i in ip: 
      if len(i) > 3 or int(i) < 0 or int(i) > 255: 
         return False
      if len(i) > 1 and int(i) == 0: 
         return False
      if len(i) > 1 and int(i) != 0 and i[0] == '0': 
         return False
   return True
  
# Function converts string to IP address 
def ipconvert(A): 
   con = len(A) 

   # Check for string size 
   if con > 12: 
      return [] 
   newip = A 
   l = [] 

   # Generating different combinations. 
   for i in range(1, con - 2): 
      for j in range(i + 1, con - 1): 
         for k in range(j + 1, con): 
            newip = newip[:k] + "." + newip[k:] 
            newip = newip[:j] + "." + newip[j:] 
            newip = newip[:i] + "." + newip[i:] 

            # Check for the validity of combination 
            if ipvalid(newip): 
               l.append(newip) 
               newip = A 
   return l  
# Driver code          
A = input("Enter IP address")
print(ipconvert(A)) 

आउटपुट

Enter IP address25525522134
['255.255.22.134', '255.255.221.34']

  1. पायथन में सभी संभावित वैध पथों से अधिकतम अंक खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास दो सरणियाँ हैं nums1 और nums2। एक वैध पथ निम्नानुसार परिभाषित किया गया है - पार करने के लिए nums1 या nums2 चुनें (इंडेक्स-0 से)। सरणी को बाएँ से दाएँ पार करें। अब, यदि हम nums1 और nums2 में मौजूद किसी भी मान से आगे बढ़ रहे हैं तो हम पथ को अन्य सरणी में बदल सकते हैं। य

  1. किसी दिए गए स्ट्रिंग के सभी क्रमपरिवर्तन मुद्रित करने के लिए पायथन प्रोग्राम

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक स्ट्रिंग दी गई है जिसकी हमें स्ट्रिंग के सभी संभावित क्रमपरिवर्तन प्रदर्शित करने की आवश्यकता है। आइए अब नीचे दिए गए कार्यान्वयन में समाधान देखें - उदाहरण # conversion def toString(List):    return &

  1. पायथन में किसी दिए गए स्ट्रिंग के सभी संभावित क्रमपरिवर्तन कैसे खोजें?

    किसी दिए गए स्ट्रिंग के सभी संभावित क्रमपरिवर्तनों को खोजने के लिए, आप itertools मॉड्यूल का उपयोग कर सकते हैं जिसमें एक उपयोगी विधि है जिसे क्रमपरिवर्तन (iterable[, r]) कहा जाता है। यह विधि टुपल्स के रूप में चलने योग्य तत्वों के क्रमिक r लंबाई क्रमपरिवर्तन लौटाती है। स्ट्रिंग के रूप में सभी क्रमपरि