Salvatore Salvataggio
a fórum lelke
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 8673 Tartózkodási hely: Ahol fikázni könnyű alkotni nehéz!
|
Algoritmus: Tournament vagy ennek a heap változata.
Valami hasonlóra lett kitalálva.
|
angiiiiii
ezüst tag
Csatlakozott: csüt. ápr. 20, 2006 20:26 Hozzászólások: 19
|
C-ben dinamikus programozás (jegyfoglalás)
Egy rendezvényt olyan teremben tartanak, ahol n db ülőhely van. Az ülőhelyek 1-től n-ig sorszámozottak. A
rendezvény szervezője megrendeléseket fogad. A megrendelésben meg kell adni, hogy milyen sorszámú ülőhelyet
szeretne venni a megrendelő. Mivel ugyanazt a helyet többen is igényelhetik, ezért a jegyiroda csak azt igéri,
hogy olyan helyet ad, amelynek sorszáma legfeljebb d-vel nagyobb, mint az igényelt. Minden megrendelés egy
a f számpárt tartalmaz, ami azt jelenti, hogy a megrendelő olyan ülőhelyet kíván venni, amelynek s sorszámára
teljesül, hogy s − a d, és ezért f Eurót zetne!
Készítsen olyan programot, amely kiszámítja, hogy mekkora az elérhető legnagyobb bevétel és meg is ad egy
olyan jegykiosztást, amely kielégíti a megrendeléseket és a lehető legnagyobb bevételt eredményezi!
Bemeneti specikáció
A be.txt szöveges állomány első sorában három egész szám van, n, m és d. n (1 n 1000) az ülőhelyek
száma, m (1 m 3000) a megrendelések száma , d (1 d 100) pedig a jegyiroda által vállat eltérés. A
következő m sorban az egyes megrendelések leírása szerepel a f számpár formájában, (1 a n), (1 f 200).
Az állomány i+1-edik sora az i-edik megrendelést adja. A bemenetben az igények az igényelt a sorszám szerint
nemcsökkenő sorrendben vannak.
Kimeneti specikáció
A ki.txt szöveges állományba első sorába a legnagyobb bevételt eredményező megrendelés részhalmaz k elemsz
ámát kell írni. A következő k sor tartalmazza a jegykiosztást a kiválasztott k megrendelés számára. Minden
sor két egész számot tartalmazzon egy szóközzel elválasztva. Az első szám egy megrendelés sorszáma, a második
pedig annak az ülőhelynek a sorszáma, amelyet a megrendelő kap. Több megoldás esetén bármelyik megadható.
Példa bemenet és kimenet
be.txt
6 5 1
2 6
3 2
3 20
4 5
4 10
ki.txt
4
1 2
3 3
4 5
5 4
Id®limit: 0.2 mp
Memórialimit: 16 MB
Tudna valaki segíteni az algoritmusok felépítésében? Vagy az alvi felépítésben?
|