Solving distance geometry problems for protein structure determination