Záverečný test - 19.12.

Moderátor: FeroG

<<

očko

Príspevky: 8

Registrovaný: Sob Nov 24, 2012 12:52 pm

Poslať Str Dec 19, 2012 9:07 pm

Záverečný test - 19.12.

Chcel by som Vás poprosiť o vysvetlenie časti zadania testu .. konkrétne


public ReklamnyBox zobrazBox() - vráti ďalší box na zobrazenie, t.j. zobrazovaný box, ktorý má najmenší pomer uskutočnených zobrazení boxu k predplatenému počtu zobrazení, a zvýši mu počet zobrazení o 1. Ak žiaden taký box sa už nezobrazuje, vráti null. (5 bodov);
blaskom
<<

FeroG

Príspevky: 1290

Registrovaný: Uto Máj 29, 2007 11:25 am

Poslať Str Dec 19, 2012 9:28 pm

Re: Záverečný test - 19.12.

očko píše:Chcel by som Vás poprosiť o vysvetlenie časti zadania testu .. konkrétne
public ReklamnyBox zobrazBox() - vráti ďalší box na zobrazenie, t.j. zobrazovaný box, ktorý má najmenší pomer uskutočnených zobrazení boxu k predplatenému počtu zobrazení, a zvýši mu počet zobrazení o 1. Ak žiaden taký box sa už nezobrazuje, vráti null. (5 bodov);


Pozrime sa na to po castiach:
zobrazovany box
: v uvode zadania sa hovori, ze zobrazovany box je taky box, ktory ma predplateny pocet zobrazeni vacsi ako uz zrealizovany pocet zobrazeni. Ak mame reklamny box, ktory ma predplateny pocet zobrazeni 1000 a zobrazil sa len 300 krat, tak takyto box je zobrazovany. Ak vsak mame box, ktory bol predplateny na 1000 zobrazeni a zobrazil sa uz 1000 krat, tak takyto box prirodzene nie je zobrazovany (to co bolo predplatene sme vycerpali)

ktorý má najmenší pomer uskutočnených zobrazení boxu k predplatenému počtu zobrazení
: spomedzi vsetkych zobrazovanych boxov (ak take su) chceme vybrat nejaky taky box ze ak si zratame pomer uz spravenych zobrazeni a predplatenych zobrazeni, tak chceme tento pomer co najmensi. Priklad: mame box A predplateny na 1000 zobrazeni a spravilo sa uz 100 zobrazeni. Pomer uskutocnenych k predplatenym je 0,1 (=100/1000). Inymi slovami objednavku sme spravili na 10%. Mozeme mat aj iny box B predplateny na 500 zobrazeni a spravilo sa uz 250 zobrazeni. Pre box B je pomer 0.5 (=250/500). Podla zadania pri vybere boxu dame prednost boxu A pred boxom B, pretoze 0,1 < 0,5. Vo vseobecnosti hladame box, ktory ma svoj pomer (percento splnenia objednavky) co najmensie.

a zvýši mu počet zobrazení o 1
: pre vybrany box poznacime, ze sme opat zobrazili
<<

očko

Príspevky: 8

Registrovaný: Sob Nov 24, 2012 12:52 pm

Poslať Str Dec 19, 2012 11:11 pm

Re: Záverečný test - 19.12.

poprosím aj o vysvetlenie tejto časti:


public List<ReklamnyBox> zobrazBoxy(int pocetBoxov) - vráti (nanajvýš) zadaný počet boxov na zobrazenie rovnakým spôsobom ako metóda zobrazBox. Pozor, nestačí však len pocetBoxov krát zavolať metódu zobrazBox. Vyžadujeme, aby vo vrátenom zozname boxov neboli žiadne 2 reklamné boxy smerujúce na tú istú webovú stránku, t.j. s rovnakou URL adresou stránky
blaskom
<<

FeroG

Príspevky: 1290

Registrovaný: Uto Máj 29, 2007 11:25 am

Poslať Str Dec 19, 2012 11:57 pm

Re: Záverečný test - 19.12.

očko píše:public List<ReklamnyBox> zobrazBoxy(int pocetBoxov) - vráti (nanajvýš) zadaný počet boxov na zobrazenie rovnakým spôsobom ako metóda zobrazBox. Pozor, nestačí však len pocetBoxov krát zavolať metódu zobrazBox. Vyžadujeme, aby vo vrátenom zozname boxov neboli žiadne 2 reklamné boxy smerujúce na tú istú webovú stránku, t.j. s rovnakou URL adresou stránky


Takze opat po castiach:
vráti (nanajvýš) zadaný počet boxov na zobrazenie rovnakým spôsobom ako metóda zobrazBox.
: Povodna metoda zobrazBox nam vratila jeden box (ak taky bol), ktory bol zobrazovany a zaroven mal najmensiu uroven vybavenia (spominany pomer). Metoda zobrazBox navyse aj poznacila zobrazenie boxu. Problem vsak je, ze casto na jednej stranke nezobrazujeme len jeden reklamny box ale hned viacero.Resp. od vlastnika stranky mame vyhrady priestor na nejaky pocet boxov (parameter pocetBoxov). A zobrazenie len jedneho boxu (metodou zobrazBox) by nebolo dobre vyuzitie tohto priestoru. Preto namiesto jedneho boxu chceme mat na vystupe zoznam boxov, ktora sa v tomto priestore maju zobrazit a zaroven chceme poznacit ich zobrazenie. Naivna implementacia by bola:
  Kód:
List<ReklamnyBox> boxy = new ArrayList<Boxy>();
for (int i=0; i<pocetBoxov; i++) {
  ReklamnyBox box = zobrazBox();
  if (box != null)
    boxy.add(box);
  else
    break;
}

Problem tohto naivneho pristupu je to, ze lahko sa moze stat, ze metoda zobrazBox nam v ramci tohto cyklu vrati rovnaky box (nechceme mat zobrazeny rovnaky box viac krat na jednej stranke). Zaroven na jednu stranku moze smerovat viacero boxov v ramci roznych kampani. A preto tiez nechceme, aby v ramci toho zoznamu boli nejake boxy (hoc rozne), ktore by smerovali na tu istu stranku. Co treba spravit? Vratit co najvacsi zoznam boxov (nie vsak vacsi ako pocetBoxov), ktory by neobsahoval 2 boxy smerujuce na tu istu adresu a zaroven chceme zachovat, ze preferovane su boxy s co najmensim percentom splnenia objednavky.

Späť na PAZ1a

Kto je on-line

Užívatelia prezerajúci fórum: Žiadny registrovaný užívateľ nie je prítomný a 1 hosť

cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software.
Slovenský preklad.