Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Algorithm minOrga(budget,K)
- INPUT: Das verfügbare Budget budget, Ein zweidimensionales Array mit Kosten und Organisationsaufwand K
- OUTPUT: Ein zweidimensionales Array mit minimalen Organisationsaufwand und mindestens der Deckung des Budgets, solutions
- solutions = {};
- gesamtaufwand = 0;
- gesamtkosten = 0;
- FOR i=0 TO K.length DO
- gesamtaufwand += K[i][0];
- gesamtkosten += K[0][i];
- OD
- maxkosteneinsparung = gesamtkosten - budget;
- FOR i=0 TO K.length DO
- FOR j=0 TO gesamtaufwand DO
- topleft = maxkosteneinsparung + 1;
- above = maxkosteneinsparung + 1;
- IF isset(solution[i-1])
- IF isset(solutions[i-1][j-K[i][1]])
- topleft = solutions[i-1][j-K[i][1]];
- FI
- above = solutions[i-1][j];
- FI
- IF K[i][1] == j
- topleft = 0;
- FI
- IF j == 0
- solution=0;
- FI
- ELIF K[i][1] > j
- solution = $above;
- FILE
- ELSE
- solution = above;
- IF topleft + K[i][0] < above
- solution = topleft + K[i][0];
- FI
- ESLE
- solutions[i][j] = solution;
- OD
- OD
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement