La vedo un pò complicata gestirla direttamente tramite mysql.
Con php ho pensato una soluzione del genere:
Codice PHP:
$array = array('A'=>11,'B'=>3,'C'=>2,'D'=>4,'E'=>5,'F'=>5,'G'=>7,'H'=>2,'I'=>10,'L'=>6,'M'=>3,'N'=>9,'O'=>1,'P'=>10,'Q'=>2);
$max = max($array);
$arr = array();
$i = 0;
$tot = 0;
foreach($array as $k => $v) {
$tot+=$v;
if($tot>$max) {
$tot = $v;
$i++;
}
$arr[$i][$k] = $v;
}
echo '<pre>';
print_r($arr);
Una volta che hai il tuo array lo cicli, concateni le chiavi, ne sommi i totali e fai ciò che vuoi.