summaryrefslogtreecommitdiff
path: root/prolog/problems/lists/sublist_2
diff options
context:
space:
mode:
Diffstat (limited to 'prolog/problems/lists/sublist_2')
-rw-r--r--prolog/problems/lists/sublist_2/common.py14
-rw-r--r--prolog/problems/lists/sublist_2/en.py18
2 files changed, 32 insertions, 0 deletions
diff --git a/prolog/problems/lists/sublist_2/common.py b/prolog/problems/lists/sublist_2/common.py
new file mode 100644
index 0000000..84c0bc8
--- /dev/null
+++ b/prolog/problems/lists/sublist_2/common.py
@@ -0,0 +1,14 @@
+id = 117
+group = 'lists'
+number = 24
+visible = True
+facts = None
+
+solution = '''\
+conc117([], L, L).
+conc117([H|T], L2, [H|L]) :-
+ conc117(T, L2, L).
+sublist(L, S) :-
+ conc117(_, T, L),
+ conc117(S, _, T).
+'''
diff --git a/prolog/problems/lists/sublist_2/en.py b/prolog/problems/lists/sublist_2/en.py
new file mode 100644
index 0000000..5b6808b
--- /dev/null
+++ b/prolog/problems/lists/sublist_2/en.py
@@ -0,0 +1,18 @@
+id = 117
+name = 'sublist/2'
+slug = 'generate sublists of a list'
+
+description = '''\
+<p><code>sublist(L, SL)</code>: <code>SL</code> is a continuous sublist of the list <code>L</code>.</p>
+<pre>
+ ?- sublist([1,2,3], X).
+ X = [] ;
+ X = [1] ;
+ X = [1,2] ;
+ X = [1,2,3] ;
+ X = [2] ;
+ X = [2,3] ;
+ X = [3].
+</pre>'''
+
+hint = {}