-> As defined in test set i am considering A,B,C,D as my SKU IDs but its not restrcted you can add more also.
-> Approch followed includes SOLID design priciple and factory design pattern.
-> Factory design pattern is useful in future if we want to add more number of promotions.It helps to maintain loose coupled architecture in code.
-> In solution i defined two interfaces one for individual product combination and multiple product combination both are extensible.
-> Soltion supports code extensiblity and easy maintainability.