Teaching Kids Programming: Videos on Data Structures and Algorithms
Given x is a positive integer, find such that
Math Exponential Formula
The exponential formula:
Thus:
Thus:
Bruteforce – Linear Search Algorithm
The upperbound of x can be set to 2048 because is greater than .
1 2 3 4 | T = 2**2048 for x in range(1, 2048+1): if x**x == T: print(x) |
T = 2**2048 for x in range(1, 2048+1): if x**x == T: print(x)
Binary Search Algorithm to Find Root to Equation
We can binary search:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | def f(): L = 1 R = 2048 T = 2**2048 while L <= R: m = L + R >> 1 mm = m**m if mm == T: return m if mm > T: R = m - 1 else: L = m + 1 return -1 # solution not found |
def f(): L = 1 R = 2048 T = 2**2048 while L <= R: m = L + R >> 1 mm = m**m if mm == T: return m if mm > T: R = m - 1 else: L = m + 1 return -1 # solution not found
–EOF (The Ultimate Computing & Technology Blog) —
GD Star Rating
loading...
520 wordsloading...
Last Post: Teaching Kids Programming - Maximum Absolute Value of Sublist via Kadane's Algorithm
Next Post: Teaching Kids Programming - Top K Frequent Elements (Heap and Counter)