Koda je nekoliko enostavnejša, če v vsakem koraku najprej izračunamo obogatitev množice dosegljive
in množico dejansko obogatimo šele po tem. V nasprotnem primeru bi namreč morali v glavni zanki vzdrževati dve množici (trenutno in tisto iz prejšnjega koraka) ter obogatitev vsakokrat izračunati kot njuno razliko.
Napiši funkcijo OsebeNaRazdalji(poznanstva, oseba, razdalja)
, ki vrne množico vseh oseb, ki so od podane osebe po poznanstvih oddaljene za podano razdaljo. Če je razdalja enaka 0, naj vrnjena množica vsebuje samo podano osebo. Če je razdalja enaka 1, nas zanimajo vsi znanci podane osebe, vendar brez podane osebe same. V primeru razdalje 2 nas zanimajo znanci znancev podane osebe, vendar brez podane osebe same in njenih neposrednih znancev. In tako naprej ...