sum = 0

for i in range(1, 1000000):
	test = i
	if (test % 10) != 0:
		test = Functions.int_to_str(test)
		if test == test[::-1]:
			test = i
			test = Functions.int_to_str(test,2)
			if test[-1] != '0':
				if test == test[::-1]:
					sum += i
					#print('Current sum is ',sum)

print('\nThe final sum of all palindromic numbers is ',sum)
Functions.runtime(start)
'''
def isPalindrome(test):
    return (test == test[::-1])


totalSum = 0
for num in range(0, 1000000):
    if (isPalindrome(str(num))):
        if (isPalindrome(str(bin(num))[2:])):
            totalSum += num

print ("Sum is %d" % totalSum)	
Functions.runtime(start)		
'''			
import time
import Functions
start = time.clock()

n_1 = 1
n_2 = 1

def fibonacci(counter):
    global n_1
    global n_2
    num_iter = 2
    x = 0
    
    while(num_iter < counter):
        x = n_1 + n_2
        n_1 = n_2
        n_2 = x
        num_iter += 1
    return x

def Binet(x):
    a = ((1 + 5**0.5)/2.0) ** x
    b = ((1 - 5**0.5)/2.) ** x

    return round((5**-0.5)*(a - b))
    
num = int(1e6)
print("The ",num,"th fibonacci number is: ",Binet(num))
print(Functions.runtime(start))
best = 953
best_ls = []
test_sum = 0
ls_of_primes = []


for i in range(start_index, len(primes_ls)):
	index = 3                                       # Incremented start prime unit correct answer.  Must be low prime.
	ls_of_primes = []
	current_prime = primes_ls[i]

	while test_sum < current_prime:
		test_sum += primes_ls[index]
		ls_of_primes.append(primes_ls[index])
		if test_sum == current_prime:
			break
		index += 1

	if test_sum == current_prime:
		best = current_prime
		best_ls = ls_of_primes
		test_sum = 0
		continue

	test_sum = 0

print('The number is, ', best)
print(best_ls)
print(len(best_ls))
Functions.runtime(start_time)