Задание »

Trokšņojošie lācīši

ID: lacisi
Grūtība: 1/5
Laika limits: 1


Uzdevums

Katrā avīzes Postimees izdevumā tiek drukāta komiksa «Trokšņojošie lācīši» kāda daļa. Diemžēl dažreiz redakcijai gadās kļūdas un viena un tā pati bilde tiek drukāta vairākas reizes. Jūs, būdams «Lācīšu» piekritējs, vēlaties uzzināt, cik jaunu (tādu, kas nav izdoti agrāk) komiksu jūs esat dabūjis pagājušajā gadā. Par laimi, jums ir saglabājušās WWW-saites visa gada komiksiem. Visas saites ir sekojoša veida:

http://www.postimees.ee/koomiks/karudXXXX.jpg,

kur XXXX ir komiksa zīmēšanas (nevis izdošanas) datums. Tā kā ir zināms, ka komiksu autors Urmass Nemvaltss nekad nezīmē divas bildes vienā dienā, tad pietiek uzrakstīt programmu, kas izrēķina dažādo datumu skaitu šajā sarakstā.

Ievaddati

Teksta faila lacisi.in pirmajā rindā atrodas avīzes izdevumu skaits N (N<=366), bet katrā no nākamajām N rindām – URL vienam komiksam dotajā formātā.

Izvaddati

Teksta failā lacisi.out jāizvada viens skaitlis – atšķirīgo komiksu skaits.

Piemērs

lacisi.in lacisi.out
5

http://www.postimees.ee/koomiks/karud0101.jpg

http://www.postimees.ee/koomiks/karud0103.jpg

http://www.postimees.ee/koomiks/karud0104.jpg

http://www.postimees.ee/koomiks/karud0103.jpg

http://www.postimees.ee/koomiks/karud0106.jpg
4

© 2001-2002 olimps! http://www.lio.lv/olimps/

Решение »

var s,code,k,i:integer;
t:string;
chis:array [1..400] of integer;
f:text;
begin
Assign(f,'lacisi.in');
Reset(f);
readln(f,s);
for i:=1 to s do
begin
readln(f,t);
t:=copy(t,38,4);
val(t,chis[i],code);
end;
Close(f);
code:=10000;
for k:=1 to s-1 do
for i:=k+1 to s do
begin
if chis[k]=chis[i] then begin inc(code); chis[k]:=code;  end;
end;
Assign(f,'lacisi.out');
Rewrite(f);
write(f,s-code+10000);
Close(f);
end.

Результат: 4/4

Добавить комментарий