Wieso sortierst du $difference nicht einfach und schreibst die Prioritäten der Reihe nach in $priority?
Nehmen wir mal an, $difference wäre sortiert, dann müsste ich aber trotzdem noch gucken, welches das größte beinhaltet und den entsprechenden Wert in $priority schreiben oder? Das wäre dann wieder die Lösung mit den vielen If - Abfragen...
MfG,
Benni