Cod sursa(job #3349742)
| Utilizator | Data | 2 aprilie 2026 12:59:39 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 0 |
| Compilator | py | Status | done |
| Runda | Teme Pregatire ACM Unibuc 2013 | Marime | 0.45 kb |
with open("elmaj.in") as fin:
n = int(fin.readline().strip())
v = list(map(int, fin.readline().split()))
candidat = None
cnt = 0
for x in v:
if cnt == 0:
candidat = x
cnt = 1
elif x == candidat:
cnt += 1
else:
cnt -= 1
aparitii = v.count(candidat)
with open("elmaj.out", "w") as fout:
if aparitii >= n // 2 + 1:
fout.write(f"{candidat} {aparitii}")
else:
fout.write("-1")
