Supponiamo di avere una matrice di n numeri. Le regole per l'array sono le seguenti:
- Tutti i numeri devono aggiungere fino a 1000
- Se un numero cambia (positivo o negativo), tutti gli altri numeri nell'array devono essere regolati in modo che la somma dell'array sia ancora 1000
- La parte difficile: tutti i numeri devono essere maggiori o uguali a 0.
I numeri 1 e 2 possono essere facilmente ottenuti ottenendo il delta di cambiamento e diffondendo il delta tra gli altri numeri. Il trucco è la condizione 3.
C'è una domanda che chiede la sua applicazione. I numeri sono percentuali da inserire nel grafico a torta; l'utente può regolare ogni segmento di torta con un cursore. Poiché si tratta di un grafico a torta che utilizza percentuali, tutti i cursori devono aggiungere fino al 100%, ovvero se l'utente trascina il cursore per ridurre le dimensioni di una porzione di torta, tutte le altre fette di torta dovrebbero aumentare. Nessuna fetta della torta deve essere inferiore a 0 o superiore a 100.