from math import sqrt

f = open("program.txt", "r")

dbParancs = int(f.readline().strip())
print(dbParancs)
adatok=[]
for sor in f:
    #print(sor.strip())
    adatok.append(sor.strip())
# print(adatok)
f.close()
print("2.a feladat")
sorszam = int(input("Kérem a parancs sorszámát: "))
p = adatok[sorszam-1]
#hagyományos
egyszerusitheto = False
for i in range(len(p)-1):
    if p[i]=="D" and p[i+1]=="E":
        egyszerusitheto = True
    if p[i]=="E" and p[i+1]=="D":
        egyszerusitheto = True
    if p[i]=="N" and p[i+1]=="K":
        egyszerusitheto = True
    if p[i]=="K" and p[i+1]=="N":
        egyszerusitheto = True
if egyszerusitheto==True:
    print("Egyszerusitheto")
else:
    print("Nem egyszerusitheto")

if ("DE" in p) == True or ("ED" in p) == True or ("NK" in p) == True or ("KN" in p) == True:
    print("Egyszerusitheto")
else:
    print("Nem egyszerusitheto")
print("2.b feladat")

dbED = 0
dbN = 0
dbK = 0
maxTav = 0
lepes = 0
maxLepes = 0
for betu in p:
    if betu=="D":
        dbED = dbED + 1
    if betu=="E":
        dbED = dbED - 1
    if betu=="N":
        dbN += 1
    if betu == "K":
        dbK += 1
    tav = sqrt(dbED*dbED+pow(dbN-dbK,2))
    lepes += 1
    if tav > maxTav:
        maxTav = tav
        maxLepes = lepes
print(f"{abs(dbED)} lépést kell tenni az ED,  {abs(dbN-dbK)} lépést a KN tengely mentén.")
print(f"2.c feladat")
print(f"Legmesszebb légvonalban {maxTav:.3f} egységnyire volt a robot {maxLepes}. lépésnél")
print("3. feladat")
#allományon kiegészítés
ki = open("energia.txt", "w", encoding="utf-8") #1.

seged =[]
for i in range(len(adatok)):
    p = adatok[i]
    energia = 2 + len(p)
    for j in range(len(p)-1):
        if p[j] != p[j+1]:
            energia += 2
    print(f"{i+1}. parancshoz {energia} szükséges.")
    ki.write(f"{i + 1}. parancshoz {energia} szükséges.\n")#3: print->>> ki.write+\n
    if energia <= 100:
        seged.append(i+1)

ki.close()#2.

print(f"A kis akku elengendő: {seged}")