Making Large Language Models Better Reasoners with Alignment