summaryrefslogtreecommitdiff
path: root/prolog/problems/trees/memberbt_2
diff options
context:
space:
mode:
authorAleš Smodiš <aless@guru.si>2015-08-18 16:06:19 +0200
committerAleš Smodiš <aless@guru.si>2015-08-18 16:06:19 +0200
commit95e2fe57f6e4639f6ae9f1fef368829d5090dbf6 (patch)
tree462ba05eb0c4732ca1c97739548801258bf47b40 /prolog/problems/trees/memberbt_2
Exported all problems from the SQLite database into the new directory structure.
Diffstat (limited to 'prolog/problems/trees/memberbt_2')
-rw-r--r--prolog/problems/trees/memberbt_2/common.py13
-rw-r--r--prolog/problems/trees/memberbt_2/en.py14
2 files changed, 27 insertions, 0 deletions
diff --git a/prolog/problems/trees/memberbt_2/common.py b/prolog/problems/trees/memberbt_2/common.py
new file mode 100644
index 0000000..f0ae0bd
--- /dev/null
+++ b/prolog/problems/trees/memberbt_2/common.py
@@ -0,0 +1,13 @@
+id = 135
+group = 'trees'
+number = 42
+visible = True
+facts = None
+
+solution = '''\
+memberBT(X, b(_, X, _)).
+memberBT(X, b(L, _, _)) :-
+ memberBT(X, L).
+memberBT(X, b(_, _, R)) :-
+ memberBT(X, R).
+'''
diff --git a/prolog/problems/trees/memberbt_2/en.py b/prolog/problems/trees/memberbt_2/en.py
new file mode 100644
index 0000000..fcca1d9
--- /dev/null
+++ b/prolog/problems/trees/memberbt_2/en.py
@@ -0,0 +1,14 @@
+id = 135
+name = 'memberBT/2'
+slug = 'find elements in a binary tree'
+
+description = '''\
+<p><code>memberBT(X, T)</code>: <code>X</code> is an element of the binary tree <code>T</code>. A binary tree node is represented with the structure <code>b(L, E, R)</code>, where <code>L</code> and <code>R</code> are left and right subtrees, respectively, and <code>E</code> is the node's value. An empty tree is denoted by <code>nil</code>.</p>
+<pre>
+ ?- memberBT(X, b(b(nil,2,nil),1,b(nil,3,nil))).
+ X = 1 ;
+ X = 2 ;
+ X = 3.
+</pre>'''
+
+hint = {}