f = open("veetel.txt")
adatok = []


# ezzel a függvénnyel nem lesz figyelmeztetés a 16. dorban
def strip(szoveg):
    return szoveg.strip()


i = 0
for sor in f.readlines():
    if not i % 2:
        nap, radio = sor.split()
        adatok.append([int(nap), int(radio)])
    else:
        adatok[-1].append(strip(sor))
    i += 1
f.close()

# 2. feladat
print("2.feladat\nAz első üzenet rögzítője:", adatok[0][1])
print("Az utolsó üzenet rögzítője:", adatok[-1][1])

# 3. feladat
print("3. feladat")
for x in adatok:
    if 'farkas' in x[2]:
        print("{0}. nap {1} rádióamatőr".format(x[0], x[1]))

# 4. feladat
print("4. feladat")
napok = [x[0] for x in adatok]
for i in range(1, 12):
    print("{0}. nap {1} rádióamatőr".format(i, napok.count(i)))

# 5. feladat
ki = open("adaas.txt", "w")
napok = sorted(list(set(napok)))  # napok sorszáma sorbarendezve
for nap in napok:
    uzenetek = [x[2] for x in adatok if x[0] == nap]  # az egyes napokhoz tartozóüzenetek
    helyreallitott = uzenetek[0]
    # az uzenetek listában vannak az azonos naphoz tartozó üzenetek
    # az első üzenet a helyreallitott stringben van
    # a helyreallitott uzenet karaktereit hasonlítjuk össze a többivel és # esetén csere
    for uzenet in uzenetek:
        for i in range(len(helyreallitott)):
            if helyreallitott[i] == '#':
                helyreallitott = helyreallitott[:i] + uzenet[i] + helyreallitott[i + 1:]
    print(nap, helyreallitott, file=ki)
ki.close()
print("5. feladat\nA fájlbaírás kész.")


# 6. feladat
def szame(szo):
    valasz = True
    for i in range(1, len(szo)):
        if szo[i] < '0' or szo[i] > '9':
            valasz = False
    return valasz


# 7. feladat
n, m = int(input("7. feladat\nAdja meg a napot: ")), int(input("Adja meg a megfigyelőt: "))
elem = [x for x in adatok if x[0] == n and x[1] == m]
# print(elem)
if len(elem) == 0:
    print("Nincs ilyen adat")
else:
    # elem[0][2].split() az üzenetet szétdarabolja
    # elem[0][2].split()[0] kivesszi az egyedekre vonatkozó információt pl: 1/0
    # elem[0][2].split()[0].split("/") eredménye: ['1', '0']
    egyedek = elem[0][2].split()[0].split('/') if '#' not in elem[0][2].split()[0] else []
    if len(egyedek) == 2:
        print("A megfigyelt egyedek száma:", int(egyedek[0]) + int(egyedek[1]))
    else:
        print("Nincs információ.")
