import itertools

def canvi_temp1(it, inc):
    pr= next(it)
    seg= next(it)
    for x in it:
        mitjana = (pr[1]+seg[1])/2
        if abs(mitjana - x[1]) > inc:
            yield x[0]
        pr= seg
        seg=x

def nMitjAct(it):
    it1, it2, it3 = itertools.tee(it, 3)
    next(it2)
    next(it3)
    next(it3)
    itm = map(lambda x,y,z: (z[0], (x[1]+y[1])/2, z[1]), it1, it2, it3)
    return itm

def canvi_temp2(it, inc):
    it1 = nMitjAct(it)
    it2 = filter(lambda t : abs(t[1]-t[2]) > inc, it1)
    it3 = map(lambda t:t[0], it2)
    return it3
        

# tria la solució que vols provar
canvi_temp = canvi_temp1
