for(int i = start; i <= m[s[end]]; ++i) { m.erase(s[i]); 因为使用了i <= m[s[end]]作为判断条件,所以始终无法删除是s[end]这个元素