algorithm => HDU 2871

Signed-off-by: CyberZHG <CyberZHG@gmail.com>