bm算法