kodas 1
class Slidininkas:
def __init__(self, vardas, pavarde, valanda, minute, sekunde):
self.vardas = vardas
self.pavarde = pavarde
self.valanda = valanda
self.minute = minute
self.sekunde = sekunde
def nuskaitymas():
with open("U2.txt", "r") as duomenys:
slidininkai = []
n = int(duomenys.readline().strip())
for _ in range(n):
eilute = duomenys.readline().strip().split()
slidininkai.append(Slidininkas(eilute[0], eilute[1], int(eilute[2]), int(eilute[3]), int(eilute[4])))
m = int(duomenys.readline().strip())
finisas = {}
for _ in range(m):
eilute = duomenys.readline().strip().split()
finisas[eilute[0] + " " + eilute[1]] = (int(eilute[2]), int(eilute[3]), int(eilute[4]))
return slidininkai, finisas
def skaiciuoti_laika(slidininkai, finisas):
rezultatai = []
for slid in slidininkai:
vardas_pavarde = slid.vardas + " " + slid.pavarde
if vardas_pavarde in finisas:
f_val, f_min, f_sec = finisas[vardas_pavarde]
s_val, s_min, s_sec = slid.valanda, slid.minute, slid.sekunde
sugais_m = (f_val * 60 + f_min) * 60 + f_sec - ((s_val * 60 + s_min) * 60 + s_sec)
sugais_min = sugais_m // 60
sugais_sec = sugais_m % 60
rezultatai.append((vardas_pavarde, sugais_min, sugais_sec))
return rezultatai
def rikiuoti_rezultatus(rezultatai):
for i in range(len(rezultatai)):
for j in range(i + 1, len(rezultatai)):
if rezultatai[i][1] > rezultatai[j][1] or (rezultatai[i][1] == rezultatai[j][1] and rezultatai[i][2] > rezultatai[j][2]):
rezultatai[i], rezultatai[j] = rezultatai[j], rezultatai[i]
def rasymas(rezultatai):
with open("U2rez.txt", "w") as rez:
for r in rezultatai:
rez.write(f"{r[0]} {r[1]} {r[2]}\n")
def main():
slidininkai, finisas = nuskaitymas()
rezultatai = skaiciuoti_laika(slidininkai, finisas)
rikiuoti_rezultatus(rezultatai)
rasymas(rezultatai)
main()
Submit your DMCA takedown request here to
report copyright infringement.