Yes, but you needed an offer to get 3 for £90, otherwise 3 would have been £105.
One shirt £45 full price
Two shirts £60 (rather than £90 full price), so 33% off
Three shirts £90 (rather than £135 full price or £105 using the 2+1 price), so 33% off full price or 14% off the (2+1) price