you can use conditionals as you have suggested… my opinion, since al the “placements” are predefined, you can put them in an option set and set and add an attribute of a number type which will safe the percentages for the respective “placements”
From that you can surely call in you calculations dynamically!