JNTUH Programming for Problem Solving NOTES