solve all kinds of interesting algorithm problems