summaryrefslogtreecommitdiff
path: root/python/problems/dictionaries/family/sl.py
blob: 2eaff157c752b1dd0e9836a68de5730119ae3f39 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
import server
mod = server.problems.load_language('python', 'sl')


id = 20601
name = 'Družinsko drevo'

description = '''\
<p>
V seznamu imamo spravljeno družinsko drevo. Primer:
<pre>
family = [('bob', 'mary'), ('bob', 'tom'),
          ('bob', 'judy'), ('alice', 'mary'),
          ('alice', 'tom'), ('alice', 'judy'),
          ('renee', 'rob'), ('renee', 'bob'),
          ('sid', 'rob'), ('sid', 'bob'),
          ('tom', 'ken'), ('ken', 'suzan'),
          ('rob', 'jim')]
</pre>
</p>
<p>
V vsaki terki sta zapisani dve imeni: ime starša in ime otroka. Terka
<code>('bob', 'mary')</code> nam pove, da je Bob Maryjin oče, terka
<code>('bob', 'tom')</code> pa, da je Bob Tomov oče, itd.
Za lažje razumevanje si relacije predstavimo s sliko:
<figure>
  <a href="[%@resource family.png%]" target="_blank">
    <img src="[%@resource family.png%]" />
  </a>
</figure>
</p>
<h3>Naloga</h3>
<p>
Napišite funkcijo <code>family_tree(family)</code>, ki sprejeme seznam
v katerem je spravljeno družinsko drevo in vrne slovar v katerem je za vsakega
starša spravljen seznam vseh njegovih otrok. Vrstni red otrok naj bo
enak vrstnem redu otrok v začetnem seznamu. </p>
<pre>
>>> family_tree(family)
{'renee': ['rob', 'bob'],
'ken': ['suzan'],
'rob': ['jim'],
'sid': ['rob', 'bob'],
... ,
'bob': ['mary', 'tom', 'judy']}
</pre>
</p>'''

plan = []

hint = {
    'final_hint': ['''\
<p>Program je pravilen! <br>
</p>
'''],
}