Set consolidation: Difference between revisions

Content added Content deleted
(Added AutoHotkey)
(Replaced the "seq[set[char]]" by a "varargs[set[char]]". Removed useless "$" in "echo $consolidate...".)
Line 1,458: Line 1,458:
=={{header|Nim}}==
=={{header|Nim}}==
{{trans|Python}}
{{trans|Python}}
<lang nim>proc consolidate(sets: seq[set[char]]): seq[set[char]] =
<lang nim>proc consolidate(sets: varargs[set[char]]): seq[set[char]] =
if len(sets) < 2:
if len(sets) < 2:
return sets
return @sets
var (r, b) = (@[sets[0]], consolidate(sets[1..^1]))
var (r, b) = (@[sets[0]], consolidate(sets[1..^1]))
for x in b:
for x in b:
Line 1,469: Line 1,469:
r
r


echo $consolidate(@[{'A', 'B'}, {'C', 'D'}])
echo consolidate({'A', 'B'}, {'C', 'D'})
echo $consolidate(@[{'A', 'B'}, {'B', 'D'}])
echo consolidate({'A', 'B'}, {'B', 'D'})
echo $consolidate(@[{'A', 'B'}, {'C', 'D'}, {'D', 'B'}])
echo consolidate({'A', 'B'}, {'C', 'D'}, {'D', 'B'})
echo $consolidate(@[{'H', 'I', 'K'}, {'A', 'B'}, {'C', 'D'}, {'D', 'B'}, {'F', 'G', 'H'}])</lang>
echo consolidate({'H', 'I', 'K'}, {'A', 'B'}, {'C', 'D'}, {'D', 'B'}, {'F', 'G', 'H'})</lang>

{{out}}
{{out}}
<pre>
<pre>