Module: (C++) Cicli nidificati


Problem

7 /8


*Mastice

Problem

Il negozio vende mastice in scatole da a kg (tipo 1), b kg (tipo 2) e c kg (tipo 3) )). Come acquistare esattamente N kg di mastice senza aprire le scatole? In quanti modi è possibile farlo?
 

Input 
La stringa di input contiene quattro numeri separati da spazi: a , b , c e N .

Impronta 
Nella prima riga è necessario stampare il numero K delle modalità con cui è possibile acquistare una data quantità di mastice (N kg) senza aprire le scatole. In ciascuna delle seguenti righe K, il programma dovrebbe stampare (separati da spazi) tre numeri, ka , kb e kc< /code> : il numero di scatole di tipo 1, 2 e 3 per ciascuna delle opzioni di acquisto K. Le varianti devono essere emesse in ordine lessicografico: prima le varianti con il valore ka più piccolo, per ka identico – prima le varianti con il valore kb più piccolo, ecc.

 

Esempi
# Input Uscita
1 15 17 21 185 5
0 1 8
1 10 0
3 7 1
5 4 2
7 1 3