8272022-01-18 15:41:33chwbEgykorĂşak (75 pont)python3Wrong answer 50/7582ms23016 KiB
# Nemes Tihamér Nemzetközi Programozási Verseny, I. korcsoport 2. forduló
# ---------- EgykorĂşak ----------
# Peti nyári táborba megy és kíváncsi arra, hogy a táborban hány másik, vele egykorú résztvevő lesz.
# Egykorúnak azt tekinti, akik születésének napja az övétől legfeljebb 365 napra van.
# Készíts programot, amely megadja, hogy hány vele egykorú résztvevő lesz a táborban!
# Bemenet
# A standard bemenet első sorában a táborozók száma van (1N10000).
# A második sor-ban Peti születési dátuma található (Év, Hónap, Nap – szabályos dátum, Év 1950 és 2050 közötti,
# ekkor pontosan a 4-gyel osztható évszámok szökőévek).
# A következő N sor az egyes táborozók születési dátumait tartalmazza (TÉi, THi, TNi – szabályos dátum).
# Kimenet
# A standard kimenetre azon táborozók számát kell írni, akik Petivel egykorúak!

# io10 io13 nál 1-vel kevesebbet kapok
# io15, io16 kevesebbet kapok

tdatumok = []     # táborozók születési dátumai
petidatum = []       #Peti születési dátuma
# fbe = open('io1\in.17')
# for i, sor in enumerate(fbe):
#     if i > 0:
#         sorlista = sor.strip().split()
#         sorlista[0] = int(sorlista[0])
#         sorlista[1] = int(sorlista[1])
#         sorlista[2] = int(sorlista[2])
#     if i == 1:
#         petidatum = sorlista
#     elif i > 1:
#          tdatumok.append(sorlista)
# fbe.close()

tszama = int(input())
sorlista = input().strip().split()
sorlista[0] = int(sorlista[0])
sorlista[1] = int(sorlista[1])
sorlista[2] = int(sorlista[2])
petidatum = sorlista
for i in range(0, tszama):
        sorlista = input().strip().split()
        sorlista[0] = int(sorlista[0])
        sorlista[1] = int(sorlista[1])
        sorlista[2] = int(sorlista[2])
        tdatumok.append(sorlista)

def napszam(datum):
    honapnapok = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334]
    napszam = datum[0] * 365 + honapnapok[datum[1]-1] + datum[2]
    napszam = napszam + datum[0] // 4
    return napszam

petinapszam = napszam(petidatum)
egyidos = 0
for tdatum in tdatumok:
    tdatumnapszam =napszam(tdatum)
    if ( tdatumnapszam > petinapszam - 366) and ( tdatumnapszam < petinapszam + 366):
        egyidos += 1
        if tdatum == 2004:
            print(tdatum)

# print('egyidősek:', egyidos)
print(egyidos)
# print(petidatum, napszam(petidatum))
# print(tdatumok)
# print(napszam([2003-1900, 12,1]))
SubtaskSumTestVerdictTimeMemory
base50/75
1Accepted0/057ms18996 KiB
2Accepted0/082ms22828 KiB
3Accepted5/543ms19176 KiB
4Accepted5/534ms19184 KiB
5Accepted5/528ms19204 KiB
6Accepted5/527ms19292 KiB
7Wrong answer0/529ms19236 KiB
8Accepted5/529ms19248 KiB
9Accepted5/528ms19216 KiB
10Wrong answer0/541ms19504 KiB
11Accepted5/537ms19684 KiB
12Accepted5/541ms20064 KiB
13Wrong answer0/556ms20612 KiB
14Accepted5/548ms21080 KiB
15Wrong answer0/554ms21472 KiB
16Wrong answer0/556ms22048 KiB
17Accepted5/564ms23016 KiB