Declaratively solving tricky Google Code Jam problems with Prolog-based ECLiPSe CLP system
Sergii Dymchenko, Mariia Mykhailova

TL;DR
This paper demonstrates how declarative programming with the ECLiPSe system can effectively solve complex Google Code Jam problems more simply and efficiently than traditional imperative methods.
Contribution
It introduces a declarative approach using ECLiPSe for solving challenging algorithmic problems, showing advantages over imperative solutions in simplicity and speed.
Findings
Declarative solutions are faster to develop for complex problems.
ECLiPSe can produce solutions within contest time limits.
Declarative programming reduces the complexity of problem-solving steps.
Abstract
In this paper we demonstrate several examples of solving challenging algorithmic problems from the Google Code Jam programming contest with the Prolog-based ECLiPSe system using declarative techniques like constraint logic programming and linear (integer) programming. These problems were designed to be solved by inventing clever algorithms and efficiently implementing them in a conventional imperative programming language, but we present relatively simple declarative programs in ECLiPSe that are fast enough to find answers within the time limit imposed by the contest rules. We claim that declarative programming with ECLiPSe is better suited for solving certain common kinds of programming problems offered in Google Code Jam than imperative programming. We show this by comparing the mental steps required to come up with both kinds of solutions.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsConstraint Satisfaction and Optimization · Logic, Reasoning, and Knowledge · AI-based Problem Solving and Planning
