Cod sursa(job #643765)
| Utilizator | Data | 4 decembrie 2011 14:04:43 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 80 |
| Compilator | fpc | Status | done |
| Runda | Arhiva educationala | Marime | 0.62 kb |
Program elmaj;
var a:array [1..1000001] of longint;
i,j,k,nr,n:longint;
fi,fo:text;
begin
assign(fi,'elmaj.in');
assign(fo,'elmaj.out');
reset(fi); rewrite(fo);
readln(fi,n);
for i:=1 to n do read(fi,a[i]);
k:=a[1]; nr:=1;
for i:=2 to n do
if nr>=0 then begin
if a[i]=k then inc(nr)
else dec(nr);
end
else begin
k:=a[i]; nr:=1;
end;
nr:=0;
for i:=1 to n do
if a[i]=k then inc(nr);
if nr>=(n div 2)+1 then write(fo,k,' ',nr)
else write(fo,'-1');
close(fo);
end.