Zliczanie elementow tablicy

0

Wprowadzam n (1<n<250000)liczb, i chciałbym wiedzieć ile dana liczba razy została wprowadzona. Próbowałem zrobić to na wskaźnikach, ale przy wyższych wartosciach (przyjmowane wartosci są od 1 do 1000000000) liczb pojawia sie exit code 216.

type wlongint=^longint;
var ile:wlongint; i,n,k:longint;

procedure incTab(tab:wlongint;key:longint);
begin
inc(tab, key);
tab^:=tab^+1;
end;

begin
readln(n);
getMem(ile, n*sizeof(Longint));

for i:=1 to n do
begin
readln(k);
incTab(ile, k);
end;

end.

Zapewne robie coś źle.
Jak sobie z tym poradzić ?

0

bo dla 1 miliarda pozycji tablicy jej rozmiar to prawie 4GB. Cokolwiek dużo, nie sądzisz? tutaj maksymalny rozmiar zmiennej to 2GB.

0

Faktycznie, głupie to było :| A macie może pomysł jak tego dokonać ?? (tzn. jak zliczyć ile razy dany element występuje?)

1 użytkowników online, w tym zalogowanych: 0, gości: 1