bugs in min1 and sum1; simpler algo for calculating pow(2, int(ceil(log(len(arr), 2))); 

regarding the bug

    Enter the number of elements in the array.
    10
    Enter the elements separated by spaces. Press Enter after each input.
    1
    2
    3
    4
    5
    6
    7
    8
    9
    0
    Now, entering into loop
    To exit, press q/Q
    To query, press G <start range> <end range>
    To update, press U <index> <new value>
    Traceback (most recent call last):
    File "min-1.py", line 110, in <module>
        main()
    File "min-1.py", line 87, in main
        (myarr,s) = constructMin(arr)
    File "min-1.py", line 22, in constructMin
        constructMinUtil(arr, 0, len(arr)-1, min_array, 0)
    File "min-1.py", line 12, in constructMinUtil
        right_min = constructMinUtil(arr, mid+1, end, min_array, min_index*2+2)
    File "min-1.py", line 11, in constructMinUtil
        left_min = constructMinUtil(arr, start, mid, min_array, min_index*2+1)
    File "min-1.py", line 11, in constructMinUtil
        left_min = constructMinUtil(arr, start, mid, min_array, min_index*2+1)
    File "min-1.py", line 11, in constructMinUtil
        left_min = constructMinUtil(arr, start, mid, min_array, min_index*2+1)
    File "min-1.py", line 6, in constructMinUtil
        min_array[min_index] = arr[start]
    IndexError: list assignment index out of range

and i've used much simpler algo for calculating pow(2, int(ceil(log(len(arr), 2)))

PS: i'm extremely sorry for whitespace diff, i'm using vim-better-whitespace. SO...