summaryrefslogtreecommitdiff
path: root/prolog/problems/clp_r/max_sum_2
diff options
context:
space:
mode:
Diffstat (limited to 'prolog/problems/clp_r/max_sum_2')
-rw-r--r--prolog/problems/clp_r/max_sum_2/common.py12
-rw-r--r--prolog/problems/clp_r/max_sum_2/en.py14
2 files changed, 26 insertions, 0 deletions
diff --git a/prolog/problems/clp_r/max_sum_2/common.py b/prolog/problems/clp_r/max_sum_2/common.py
new file mode 100644
index 0000000..ef4ea79
--- /dev/null
+++ b/prolog/problems/clp_r/max_sum_2/common.py
@@ -0,0 +1,12 @@
+id = 156
+group = 'clp_r'
+number = 66
+visible = True
+facts = None
+
+solution = '''\
+max_sum([_], S) :-
+ minimize(S).
+max_sum([A,B|T], S) :-
+ { S >= A + B },
+ max_sum([B|T], S).'''
diff --git a/prolog/problems/clp_r/max_sum_2/en.py b/prolog/problems/clp_r/max_sum_2/en.py
new file mode 100644
index 0000000..3e8f136
--- /dev/null
+++ b/prolog/problems/clp_r/max_sum_2/en.py
@@ -0,0 +1,14 @@
+id = 156
+name = 'max_sum/2'
+slug = 'find maximal adjacent elements'
+
+description = '''\
+<p><code>max_sum(List, Max)</code>: <code>Max</code> is the maximal sum of two adjacent elements in <code>List</code>.</p>
+<pre>
+ ?- max_sum([4.5, 3.6, 1.2, 6.7], Max).
+ Max = 8.1.
+ ?- max_sum([1.1, 1.2, -12.3, 8.8], Max).
+ Max = 2.3.
+</pre>'''
+
+hint = {}