
In collaboration with external companies, students engage in authentic algorithmic challenges inspired by real-world computational problems. They are required to design, implement, and optimize algorithmic solutions using an imperative language (C/C++), striving to achieve the highest efficiency and correctness under given constraints. Through this process, students apply theoretical knowledge to open-ended tasks, compare alternative approaches, and justify design choices based on empirical performance. The activity develops problem-solving autonomy, critical evaluation of efficiency trade-offs, and teamwork skills, preparing students to face real computational and industrial contexts. The challenge is managed by a web server, where students can submit their solutions, that are automatically validated and compared with the solutions provided by other participants.
These are the teamchers you'll work with on the challenge.
Students will learn to formalize a computational problem starting from an informal description provided by the company, identifying inputs, outputs, constraints, and relevant performance criteria. They will develop the ability to design appropriate algorithmic solutions, selecting suitable data structures and algorithmic paradigms such as greedy strategies, dynamic programming, graph algorithms, or divide-and-conquer techniques.
Students will acquire practical experience in implementing algorithms in a programming language to produce clear, modular, and testable code. They will also learn to analyze the computational complexity of their solutions, both theoretically (time and space complexity) and empirically through experimental evaluation.
Another expected outcome is the ability to conduct systematic testing and benchmarking. Students will design experiments, generate or select datasets, measure performance, and interpret results in order to compare alternative algorithmic approaches.
Take our motivation scan to find learning opportunities that will help you reach your potential goal and growth.