redundant version

本版代码中使用了极期复杂的边界判断方式，我需要实现一个更为优雅的版本