This document contains solutions to 10 algorithm problems. It begins by providing efficient O(n) time algorithms to: 1) Remove digits from an integer to maximize its value. 2) Find a subsequence of integers that sums to a given value k. It then provides linear time algorithms to: 3) Find the largest square submatrix of 1s in a binary matrix. 4) Find a maximum independent set on trees. It also provides efficient algorithms to: 5) Find the maximum/minimum product substrings. 6) Find the maximum sum substring of length <=L. 7) Find a weight maximizing increasing value subsequence. Finally, it provides two algorithms to solve Problem 10154 on finding maximum weight within a strength limit.