import math


def determine_block_ids(lon, lat):
    """
    calculates ids of blocks/subblocks based on given coordinates
    :type lon: float            longitude
    :type lat: float            latitude
    :rtype : [(int, int),       list of two tuples which contain x and y ids
              (int, int)]       of large and small block, respectively
    """
    # size of large block is 0.005   degree lat/lon
    # size of small block is 0.00025 degree lat/lon
    corner = [(lon+74.25), (lat-40.5)]

    small_block_id = map(lambda x: int(math.floor(x/0.00025)), corner)
    large_block_id = map(lambda x: x/20, small_block_id)

    return tuple(large_block_id), tuple(small_block_id)