This is a great little puzzle book to develop the skills for problem solving. It was written by the genius Shakuntala in 1979. When the book was published computers were not as common as they are now and (in my opinion) it would be very difficult to solve some of these problems ``by hand''. This was apparently not a problem for Shakuntala, who has been described as a human calculator. This description shows in these problems. In fact many of the problems have a feel
like ``Project Euler'' problems in that some of them can be solved (without as much
tedium) by using a programming language to enumerate the very large number of possible candidates. In fact I would estimate that for these problems most people would simply give up before being able to find a solution. This is a shame since in my view solving problems should be an enterprise where we ``use everything we've got'' in an attempt at a solution. By introducing a modern computer we are able to offload some of the work to a machine and get back to the fun part of problem solving. Working on the ``computational'' problems in this book are so much like the Project Euler problems that studying this book can give you some techniques to be used there.
In this book I provide up-to date detailed solutions to many of the problems posed by Shakuntala. In addition, in the case where it is prudent to do so I implement python (and sometimes R) codes to help in the enumeration of the choices and facilitate finding solutions. Reading these notes and solutions is a good way to learn a bit about the very popular and powerful programming language python. I hope that this book will help you become a stronger problem solver and open your eyes to the possibility of using {t python} as a language to help solve your own
problems.
like ``Project Euler'' problems in that some of them can be solved (without as much
tedium) by using a programming language to enumerate the very large number of possible candidates. In fact I would estimate that for these problems most people would simply give up before being able to find a solution. This is a shame since in my view solving problems should be an enterprise where we ``use everything we've got'' in an attempt at a solution. By introducing a modern computer we are able to offload some of the work to a machine and get back to the fun part of problem solving. Working on the ``computational'' problems in this book are so much like the Project Euler problems that studying this book can give you some techniques to be used there.
In this book I provide up-to date detailed solutions to many of the problems posed by Shakuntala. In addition, in the case where it is prudent to do so I implement python (and sometimes R) codes to help in the enumeration of the choices and facilitate finding solutions. Reading these notes and solutions is a good way to learn a bit about the very popular and powerful programming language python. I hope that this book will help you become a stronger problem solver and open your eyes to the possibility of using {t python} as a language to help solve your own
problems.