Programming Challenges

by Jordi Cortadella


The original intention when writing this page was to offer some programming challenges to curious and enterprising students starting some degree on Computer/Computing Science/Engineering. The page contains various problems that can be solved using creative thinking. Some of them can be solved by simply realizing a simple rule or property of the problem. Many of them require some algorithmic design. In these cases, the problems can be usually solved by designing efficient algorithms that use smart strategies to avoid exhaustive enumerations of potential solutions.

Most of these problems have been inspired by similar problems found in various sources. The most frequently used have been:
Whenever possible, the source of the problem has been cited. In some cases, the problems have been found in internet with no much information about the original author. I apologize if no appropriate credit has been given due to this lack of knowledge or information.

Many of these problems are very popular and the right solutions can be found in internet. But, what's the point in searching for them? I encourage everyone to try to solve each problem as a personal challenge or simply for fun. I also encourage to share these problems with friends and colleagues on those relaxing moments in which your brains are fresh while having a cup of coffee. The effort required to solve them is also a good exercise for mental and algorithmic agility that can contribute to face related problems in the future.

Enjoy them !