"""
2021. május: Gödrök
@author Klemand66
"""

print("\n1. feladat\n")

betxt = open("melyseg.txt")

melysegek=[]
for sor in betxt:
    melysegek.append(sor.strip())
 
betxt.close()
print(f'A fájl adatainak száma: {len(melysegek)}')



print("\n2. feladat\n")

akttav=int(input(f'Adjon meg egy távolságértéket (1 és {len(melysegek)} közötti egész számot): '))
print(f'Ezen a helyen a felszín {melysegek[akttav-1]} méter mélyen van.')



print("\n3. feladat\n")

print(f'Az érintetlen terület aránya {100*melysegek.count("0")/len(melysegek):.2f}%.')



print("\n4. feladat\n")

kitxt = open("godrok.txt","w")

darmelysegek=(" "+" ".join(melysegek)).split(" 0")
# Nem darabolhatok simán a "0"-val, a mélység is lehet "10".
godrok=list(filter(lambda d: d.strip()!="" ,darmelysegek))

for g in godrok:
    kitxt.write(f'{g.strip()}\n') # a gödrök elején szóköz maradt

kitxt.close()
print("A kiíratás és a szövegfájl lezárása sikeresen befejeződött.")



print("\n5. feladat\n")

print(f'A gödrök száma: {len(godrok)}')



print("\n6. feladat\n")

if melysegek[akttav]>"0":
    fgelott=list(filter(lambda i: i<akttav and melysegek[i]=="0" ,range(len(melysegek))))
    fgutan=list(filter(lambda i: i>akttav and melysegek[i]=="0" ,range(len(melysegek))))
    gkezd, gvege =(fgelott[-1]+1)+1, (fgutan[0]+1)-1
    print(f'a)\nA gödör kezdete: {gkezd} méter, a gödör vége: {gvege} méter.')
    godor=list(map(lambda m: int(m) ,melysegek[gkezd-1:gvege]))    
    maxm = max(godor)
    maxi = godor.index(maxm)
    folyamatos=list(map(lambda i: (i<=maxi and godor[i]>=godor[i-1]) \
               or (i>maxi and godor[i]<=godor[i-1]),range(1,len(godor))))
    if (folyamatos).count(False)==0:
        print(f'b)\nFolyamatosan mélyül.')
    else:
        print(f'b)\nNem mélyül folyamatosan.')
    print(f'c)\nA legnagyobb mélysége: {maxm} méter.')
    terfogat=sum(list(map(lambda melyseg: melyseg*10 ,godor)))
    print(f'd)\nA térfogata: {terfogat} m^3.')
    print(f'e)\nA vízmennyiség: {terfogat-10*(gvege-gkezd+1)} m^3.')
else:
    print("Az adott helyen nincs gödör.")


input("\nA befejezéshez nyomd meg az ENTER billentyűt!")
