Teniu al vostre càrrec la gestió de la producció de farina en una indústria farinera. Cal produir d kilograms de farina, tasca per a la qual es disposa de n molins. En una hora, el molí i-èsim pot produir pi kg de farina, i consumeix ci kWh (kilowatts hora). A més, cada molí té una autonomia de ui hores, i no pot estar en funcionament més temps per raons de manteniment. Amb els preus actuals de l’energia, és primordial minimitzar el consum elèctric. Podeu dissenyar un pla de producció òptim?
Per exemple, suposem que per a produir 3500 kg de farina tenim dos molins tals que:
Com que el segon molí consumeix el mateix que el primer però produeix més farina, aleshores un pla òptim consisteix en fer servir el segon molí durant 40 hores i el primer durant 10 hores, fabricant així 40 · 75 + 10 · 50 = 3500 kg de farina amb un consum elèctric total de 40 · 10 + 10 · 10 = 500 kWh.
Entrada
L’entrada consisteix en diversos casos. Cada cas comença amb n, el nombre de molins, seguit de n enters positius ui, seguit de n enters positius pi, seguit de n enters positius ci, els quals representen l’autonomia, la productivitat i el consum de cadascun dels molins, respectivament. El cas acaba amb un enter d, que representa la demanda de farina. Podeu assumir que 1 ≤ n ≤ 104, que 1 ≤ ui, pi, ci ≤ 100 per tot 0 ≤ i ≤ n−1, i que 0 ≤ d ≤ ∑i=0n−1 ui · pi (és a dir, segur que la demanda es pot satisfer).
Sortida
Per cada cas, escriviu amb quatre dígits decimals el consum mínim d’electricitat per tal de poder satisfer la demanda de farina.
Observació
Per escriure un double amb quatre dígits decimals podeu fer-ho així:
int main() { cout.setf(ios::fixed); cout.precision(4); double x; ... cout << x << endl;
Si us cal, podeu repassar com usar la funció sort per a ordenar un vector seguint un ordre ad-hoc aquí: https://xuleta.jutge.org/stl/sort.html
Input
2 20 40 50 75 10 10 3500 3 1 3 2 5 2 3 7 3 4 10 4 1 2 1 2 1 2 3 4 2 3 4 5 14
Output
500.0000 13.6000 18.5000