So I've been going back and forth between TLE and NZEC errors over the past few days.
It always seems to work great on my machine, but now I can't figure out what is causing this NZEC.
I looked around and tried everything I could find, but nothing seems to be working.
I must just be missing something.
Here is my code.
def string_plus_one(s):
if s != '':
for digit in s[::-1]:
if digit == '9':
return "%s0" % string_plus_one(s[:-1])
else:
return "%s%i" % (s[:-1], int(s[-1])+1)
else:
return '1'
t = int(raw_input())
for i in xrange(t):
try:
k_str = raw_input()
except:
continue
l = len(k_str)
#Single digit cases
if l == 0:
continue
if l == 1:
if k_str == '9':
print('11')
else:
print(int(k_str)+1)
continue
#Multiple digit cases
k_str = string_plus_one(k_str)
l = len(k_str)
h = l/2
if l%2: #Odd
p1 = k_str[:h]
p1_m = k_str[:h+1]
p1_r = p1[::-1]
p2 = k_str[-h:]
if p2 <= p1_r:
print("%s%s" % (p1_m, p1_r))
else:
p1_plus = string_plus_one(p1_m)
p1_plus_r = p1_plus[::-1]
print("%s%s" % (p1_plus, p1_plus_r[1:]))
else: #Even
p1 = k_str[:h]
p1_r = p1[::-1]
p2 = k_str[-h:]
if p2 <= p1_r:
print("%s%s" % (p1, p1_r))
else:
p1_plus = string_plus_one(p1)
print("%s%s" % (p1_plus, p1_plus[::-1]))
Any help is appreciated.