Il existe un algorithme qui consiste à placer les reines à des endroits différents sur l'échiquier et la règle est qu'elles ne doivent pas se menacer l'une l'autre. Pour moi, votre problème ressemble à celui-ci. Vous pouvez créer une structure récursive comme ci-dessous :
Trouver les premiers rangs qui répondent aux exigences : Dans votre exemple P et Q (parce que 6+6 > 10) Vous traitez donc la première colonne, puis passez à la deuxième et vérifiez si la capacité des paniers P et Q peut répondre à l'exigence : Ce n'est pas le cas dans votre exemple (parce que 4+4 < 10).
Revenez à la première étape (appelez la même fonction récursive pour la première colonne en augmentant le pointeur qui affichait B auparavant) et trouvez les deuxièmes lignes qui répondent aux exigences. P et R pour votre exemple. (6+4 = 10) Faites ensuite la deuxième étape pour P et R.
L'idée est donc de trouver, pour chaque colonne, les paniers qui répondent aux exigences, puis de passer à la deuxième colonne. Si vous pouvez trouver les rangées qui répondent aux exigences, passez à la troisième. Si vous ne pouvez pas trouver celles de la troisième étape, revenez à la deuxième étape et si aucune des combinaisons de lignes que vous avez choisies à la deuxième étape ne répond aux exigences, passez à la première et répétez l'opération.
Je n'ai pas pu vous donner un pseudocode correct mais je pense que l'idée principale est claire et qu'elle n'est pas si difficile à mettre en œuvre.