满分代码: https://blog.csdn.net/johsnows/article/details/105779048