Dopravní společnost Zakoupil,Prodal a Zbohatnul s.r.o.
Máme N měst, v každém městě je právě jeden sklad a právě jedna továrna.
Každá továrna vyrábí jedinečný druh produktu (dříví, sovy, kolomaz, blbé otázky, ...), který
může být uskladněn jenon ve skladě ve stejném městě.
Sklad ve městě i má kapacitu si výrobků.
Pokud není sklad v nějakém městě plný, továrna v tomto městě začne vyrábět jeden nový výrobek,
za ti časových jednotek ho vyrobí a přemístí do skladu.
Dále existuje k autíček, na začátku o každém víme, v jakém je městě.
Každé autíčko může naložit libovolný počet výrobků jednoho druhu a odvézt je
do libovolného města. Jedno autíčko lze v jednom časovém okamžiku použít k vyřízení
nanejvýš jedné zásilky.
Vaším úkolem je odsimulovat cestování auticek, pokud dostanete na vstupu zakázky
naší dopravní společnosti Zakoupil, Prodal a Zbohatnul s.r.o.. Tyto zakázky budou
ve formátu (čas zadání zakázky; město odkud; město kam; kolik výrobků převézt).
Výsledkem Vašeho programu by měl být popis pohybu autíček pomocí těchto příkazů:
- Autíčko a odjíždí v čase t z města
i do města j.
- Autíčko a nakládá v čase t ve městě
w výrobků.
- Autíčko a vykládá v čase t ve
městě všechny výrobky.
Formát vstupních dat
První řádka vstupního souboru obsahuje počet měst N.
Druhá řádka obsahuje N čísel si - kapacity skladů.
Třetí řádka obsahuje N čísel ti - čas výroby v kapacity skladů.
Dalších N řádek obsahuje každá N čísel - i-té číslo na j-tém
řádku udává vzdálenost města i od města j.
Další řádka obsahuje K - počet autíček.
Další řádka obsahuje K čísel - města, ve kterých se na začátku nachází autíčka.
Následující řádka obsahuje P - počet požadavků.
Posledních P řádek obsahuje každá jednu zakázku. Zakázka je pro nás
čtveřice čísel "čas_vzniku odkud kam kolik_výrobků_převést".
Vstupní data
dsim1.in N=10, K=5, P=100.
dsim2.in N=20, K=5, P=200.
dsim3.in N=50, K=10, P=200.
dsim4.in N=50, K=20, P=500.
dsim5.in N=50, K=50, P=1000.
dsim6.in N=100, K=50, P=1000.
dsim7.in N=100, K=50, P=5000.
dsim8.in N=100, K=100, P=5000.
dsim9.in N=100, K=1000, P=5000.
Generování vstupních dat
Vstupní data jsou generovaná z Perlu, tady je skript, který je generuje.