# 3. feladat
def eltelt(ido1, ido2):
    mp1 = ido1[0] * 3600 + ido1[1] * 60 + ido1[2]
    mp2 = ido2[0] * 3600 + ido2[1] * 60 + ido2[2]
    return abs(mp2 - mp1)


def idobe(mperc):
    ora = mperc // 3600
    perc = (mperc % 3600) // 60
    mp = mperc % 60
    return str(ora) + ':' + str(perc) + ':' + str(mp)


def tavolsag(jel1, jel2):
    return ((jel2[3] - jel1[3]) ** 2 + (jel2[4] - jel1[4]) ** 2) ** 0.5


def idovaltozas_hibaszam(jel1, jel2):
    return (eltelt(jel2[:3], jel1[:3]) + 299) // 300 - 1


def koordinatavaltozas_hibaszam(jel1, jel2):
    xh = (abs(jel2[3] - jel1[3]) + 9) // 10 - 1
    yh = (abs(jel2[4] - jel1[4]) + 9) // 10 - 1
    return max(xh, yh)

def hiba(jel1, jel2):
    if idovaltozas_hibaszam(jel1, jel2) or koordinatavaltozas_hibaszam(jel1, jel2):
        ido = str(jel2[0]) + ' ' + str(jel2[1]) + ' ' + str(jel2[2])
        if idovaltozas_hibaszam(jel1, jel2) > koordinatavaltozas_hibaszam(jel1, jel2):
            return ido + ' ' + 'időeltérés ' + str(idovaltozas_hibaszam(jel1, jel2))
        else:
            return ido + ' ' + 'koordináta-eltérés ' + str(koordinatavaltozas_hibaszam(jel1, jel2))
    else:
        return False


# 1. feladat
jelek = []
be = open('jel.txt')
for sor in be.readlines():
    ora, perc, mperc, x, y = sor.split()
    jelek.append([int(ora), int(perc), int(mperc), int(x), int(y)])
be.close()

# 2. feladat
ssz = int(input('2. feladat\nAdja meg a jel sorszámát! '))
print(f'x={jelek[ssz - 1][3]} y={jelek[ssz - 1][4]}')

# 3. feladat


# 4. feladat
print("4. feladat\nIdőtartam:", idobe(eltelt(jelek[-1][:3], jelek[0][:3])))

# 5. feladat
minx = min([jel for jel in jelek], key=lambda x: x[3])[3]
miny = min([jel for jel in jelek], key=lambda x: x[4])[4]
maxx = max([jel for jel in jelek], key=lambda x: x[3])[3]
maxy = max([jel for jel in jelek], key=lambda x: x[4])[4]
print(f"5. feladat\nBal alsó: {minx} {miny}, jobb felső: {maxx} {maxy}")

# 6. feladat
elm = 0
for i in range(len(jelek) - 1):
    elm += tavolsag(jelek[i], jelek[i + 1])
print(f"6. feladat\nElmozdulás: {elm:.3f}")

# 7. feladat
ki = open('kimaradt.txt', 'w')
for i in range(len(jelek) - 1):
    if hiba(jelek[i], jelek[i + 1]):
        print(hiba(jelek[i], jelek[i + 1]), file=ki)
ki.close()
