You are viewing a single comment's thread. Return to all comments →
I used recursion too. I didn't find a better way. Spend hours with this "easy" problem. Here for pythonists:
#!/bin/python import sys def findingNumbers(number, numList, i, length, found): i += length if len(numList) < len(list(str(int(numList)+1))): length += 1 newNumList = s[i:i+length] try: newNumber = int(newNumList) except ValueError: return found if newNumList[0] == "0": return False if newNumber == number + 1: found = True found = findingNumbers(newNumber, newNumList, i, length, found) return found else: return False q = int(raw_input().strip()) for a0 in xrange(q): s = raw_input().strip() # your code goes here n = (len(s)/2) + 1 for length in xrange(1, n): i=0 numList = s[i:i+length] number = int(numList) found = False found = findingNumbers(number, numList, i, length, found) if found == True: print "YES " + str(number) break else: print "NO"
Seems like cookies are disabled on this browser, please enable them to open this website
Separate the Numbers
You are viewing a single comment's thread. Return to all comments →
I used recursion too. I didn't find a better way. Spend hours with this "easy" problem. Here for pythonists: