summaryrefslogtreecommitdiff
path: root/prolog/problems
diff options
context:
space:
mode:
Diffstat (limited to 'prolog/problems')
-rw-r--r--prolog/problems/lists_advanced/sublist_2/sl.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/prolog/problems/lists_advanced/sublist_2/sl.py b/prolog/problems/lists_advanced/sublist_2/sl.py
index f7369c4..50a6878 100644
--- a/prolog/problems/lists_advanced/sublist_2/sl.py
+++ b/prolog/problems/lists_advanced/sublist_2/sl.py
@@ -1,3 +1,5 @@
+# coding=utf-8
+
name = 'sublist/2'
slug = 'Generiraj vse podsezname danega seznama'
@@ -14,6 +16,19 @@ description = '''\
X = [3].
</pre>'''
+plan = ['''\
+<p>Najprej se spomnimo, da naloga zahteva podsezname, ne podmnožice. Razlika je v tem, da so v podseznamu
+elementi originalnega seznama, ki pa se "držijo skupaj", torej niso kar poljubni elementi iz originalnega seznama.
+Morda poiščeš nek vzorec? In s katerim predikatom iščeš vzorce? To gotovo že veš. ;)</p>
+''', '''\
+<p>Seveda, vzorce lahko poiščeš s predikatom <code>conc/3</code>. Morda celo rekurzija tokrat ni potrebna? Je to
+mogoče v Prologu? :)</p>
+''', '''\
+<p>No, kakšen bi bil lahko vzorec? Hja, en kos originalnega seznama! Predstavljaj si, da je originalni seznam
+cev, ki jo hočeš skrajšati (čisto kot v oni češki risanki "A je to!"). Malo jo boš skrajšal z leve, malo z desne in...
+in tisto kar ostane je podseznam! Originalnemu seznamu malo odsekaš spredaj in malo zadaj.</p>
+''']
+
hint = {
'eq_instead_of_equ': '''\
<p>Operator <code>==</code> je strožji od operatorja <code>=</code> v smislu, da je za slednjega dovolj,