algorithms problems from coursera class