Welcome to HBH! If you had an account on hellboundhacker.org you will need to reset your password using the Lost Password system before you will be able to login.
Javascript 16 - Python Code Bank
Javascript 16
takes less than a second
##### target checksum is 88692587, because sum starts with 1, and not 0, we can start sum with 0
##### and treat the checksum as 88692588.
##### because we are using only integers, the checksum must be divisable by the length of the word.
##### The only reasonable lengths for this are 9, 12, 18. 12 being the most reasonable.
##### The equation were solving is:
#####
##### 88692588 / (n + 1) = sum from 1 to N of: (i^3 * Ai^2)
##### where n + 1 is the length of the string, i is the index of the character, Ai is the index of the character in the "tab" array
##### range of characters in tab array: 0, 19-85
targetValue = 7391049
SUCCESS = 0
FAILURE = -1
"""
translate int array to string
"""
def translateArr(arr):
wordDic = " azertyuiopqsdfghjklmwxcvbnAZERTYUIOPQSDFGHJKLMWXCVBN0123456789_$&#@"
wordArr = "a"
for i in arr:
wordArr += wordDic[i]
return wordArr
"""
sums the array by the formula
"""
def arrSum(arr):
sum = 0
for i in range(len(arr)):
sum += (arr[i]**2) * ((i+1)**3)
return sum
"""
initializes the array
"""
def initArr(arr, fromIndex):
for i in range(fromIndex):
arr.append(0)
"""
resets the array memebers from an index downwards
"""
def resetArr(arr, fromIndex):
for i in range(fromIndex):
arr[i] = 0
"""
creates an array which will answer the riddle
"""
def createArr(arr, i):
for j in range(86, 18, -1):
arr[i] = j
sum = arrSum(arr)
if targetValue < sum:
continue
if targetValue == sum:
print translateArr(arr)
return SUCCESS
if 0 != i:
if SUCCESS == createArr(arr, i - 1):
return SUCCESS
else:
resetArr(arr, i)
continue
return FAILURE
arr = []
initArr(arr, 11)
createArr(arr, len(arr) - 1)
Comments
Sorry but there are no comments to display