solutions to programming problems from various websites