implemented other algorithms, DP still open