Feladat: I.197 Korcsoport: - Nehézségi fok: -
Füzet: 2008/november, 485 - 486. oldal  PDF  |  MathML 
Témakör(ök): Feladat

A szöveg csak Firefox böngészőben jelenik meg helyesen. Használja a fenti PDF file-ra mutató link-et a letöltésre.

Egy áruházban N különféle terméket szeretnénk megvenni, több részletben, minden alkalommal néhány terméket megvásárolva. Írjunk programot, mely a termékek árainak ismeretében meghatározza, hogy azokat milyen felosztásban vegyük meg ahhoz, hogy az egyes vásárlások során az 5-ösökre való kerekítésből adódó hibák összességében számunkra a lehető legnagyobb megtakarítást eredményezzék.
A program a termékek számát és árait a standard bemenetről olvassa. Minden sorban egy-egy bevásárlólista leírása szerepel: a megvásárolni kívánt termékek N (1N10000) száma, majd a1,...,aN, szóközzel elválasztott pozitív egész számok, a termékek árai. Egy listán a termékek árösszege legfeljebb 1000000000, a bemenet végét egy ,,0'' tartalmú sor jelzi.
A program bevásárlólistánként egy sort, ebben pedig egyetlen számot írjon a standard kimenetre: az adott listán szereplő összes termék optimális felosztásban történő megvásárlása esetén a kerekítési hibákból adódó összes hasznunkat vagy veszteségünket.

 
 

Beküldendő a program forráskódja (i197.pas, i197.cpp, ...), valamint a program rövid dokumentációja (i197.txt, i197.pdf, ...), amely tartalmazza a megoldás rövid leírását, és megadja, hogy a forrásállomány melyik fejlesztőkörnyezetben fordítható.