birth control

no
What's the best option for pill birth control that will...
1.) Help with cramps (I have 9-18 day long periods that are accompanied by severe cramps. I've been on birth control before to help but I don't remember the name of it.)
2.) Prevent pregnancy (I know it's basic and in the name, but some brands aren't as effective....aka why my beautiful niece was conceived.)
3.) Not cause weight gain. I can handle mood swings, but I'm a body builder and weight gain during shredding season can kill my chances of competing / placing in competition.
Thank you for the help in advance! I'm going to make an appointment to see my doctor ASAP.