### Coding Problems : Hacker Rank (Separate The Numbers)

Here I found one interesting question from Hacker Rank, So Let's dig into question and write code....

Question you can see Here

Note: Read the question and try to understand and solve it.

Here we'll see two different ways to solve it..

#### Method 1:

• Iterative Method:

# for ex. s = "91011"
def separateNumbers(s):
res = 'NO'
for i in range(len(s)):
#i = 0 , starting digit = 9
starting_digit = int(s[ : i + 1])
new_s = str(starting_digit)

#len(new_s) = 1 , len(s)=8 ,not same
if len(new_s) != len(s):
digit = starting_digit
while len(new_s) < len(s):
# digit = 9
digit += 1 # digit = 10
new_s += str(digit) # new_s = "910" (10 concatenet)
# loop break when len(new_s) >= len(s)
# after loop breaks new_s = "91011"
if new_s == s:
res = f"YES {starting_digit}"
break
print(res)

#### Method 2:

• Recursive Method:

import re
def separateNumbers(s):
for i in range(0, len(s)//2):
if checkComply(s[0:i+1], s[i+1:]):
print(f'YES {s[0:i+1]}')
return
print('NO')
# for checking if there are two continues number's difference is = 1
def checkComply(p1, p2):
# next expected number = next_num
next_num = str(int(p1) + 1)
# match patter with p2
match = re.match(next_num, p2)
if match:
# replace next_num in p2 with ""(only first occurence)
p2_new = p2.replace(next_num, '', 1)
# recursion till len(p2_new == 0)or match == None
if len(p2_new) == 0:
return True
return checkComply(next_num, p2_new)
else:
return False

### Quick Sort for Singly Linked List using Python

Quick Sort: It's basically works on divide and conquer method, choose pivot as first node,last ,middle and make partition and swap values.

### Hangman --> Game

Let's Create One more Game.. Hangman Using Python

### Singly Linked List with Python (Data Structure)

Singly Linked List : So In this post we're gonna talk about implementation of singly linked list using Python and also implementation of some basic operation on linked list...