To je principialne zly a neoptimalny postup...
Len tak z hlavy:
Normalne logicke riesenie je vo while cykle zamienat vsetky moznosti od najmensiej po najvecsiu a tie postupne vypisovat (potom nieje nutne starat sa o duplicity, lebo sa k vecsim cislam nikdy nevracias)...
Pokial to ale nasilu musim riesit cez rekurziu, tak by som pouzil nieco, co by sa trochu podobalo prehladavaniu do hlbky. Rekurzia by prijimala 3 parametre (alebo len 1 ak by bolo povolene pouzit 2 globalne premenne - IMO lepsie riesenie) a to dynamicke (nie staticke, neexistuje maximalna dlzka, kedze aj limit = 100 nieje fixny) pole doteraz pouzitych cisiel (toto je jediny povinny parameter), celkovy sucet ktory to ma dosiahnut (t.j. teraz cislo 100) a pole existujucich bankoviek...
Rekurzia by fungovala tak, ze by sa vzdy pokusila vlozit co najvecsii prvok z pola bankoviek (a postupne mensi a mensi) do pola z pouzitimy bankovkami a ak je sucet vlozenych bankoviek < ako sucet dosiahnutia, tak by sa zavolala x krat dana rekurzia vzdy z polom doteraz vlozenych prvkov + skusaneho a vsetkych mensich (x je teda pocet bankoviek - pocet tie ktore sposobia presiahnutie hranice [suctu celeho pola] = hodnoty 100)
pokial je sucet vlozenych bankoviek = sucetu dosiahnutia (hodnoty 100) tak sa vypise, inak koniec rekurzie....
Teraz staci tento text prepisat do pascalu. Ten si zial moc dobre nepamatam a uprimne, nechce sa mi spominat si (uz na neho nemam ani ziaden kompilator a kvoli tomuto nejaky stahovat)...
V C by som to vedel (relativne) lahkon napisat...
Stale plati, ze riesenie cez rekurziu je neoptimalne, ale je to jedine dalsie "rozumne" riesenie ktore mi napadlo. V kazdom pripade zoradovat pole a vyhadzovat duplicity to fakt nieeee. Taketo quickfixi (lebo 1 nikdy nestaci...) casto krat nezachytia/dodatocne vytvoria chyby, ktore sa neodladia ani za 2x tak dlhy cas ako by sa napisalo cele zadanie od zaciatku (vravim zo skusenosti. 3 sme mali identicke zadanie, ja a dalsi sme to spravili spravne a tretiemu sme riesili kod a ani za 3 hodky sme ho neopravili... To ja osobne som ten kod pisal len 2 hodiny)...
ps. verim, ze zo slovneho opisu sa to tazko chape, ale tak hadam sa aspon zakladna idea sa dala pochopit. Pripadne sa pokusim lepsie vysvetlit ked bude zaujem o niektoru cast...
