Weekend Box Office: Cameron Diaz's 'The Other Woman' Tops 'Captain America 2' With $24.7M