* Don't remove a candidate which is first in multiple lists.
* Actually use the pruned list.
set cand {}
foreach list $lists { pushnew cand [lindex $list 0] }
- ## Remove candidate items which have not the first in some other list.
+ ## Remove candidate items which are not first in some other list.
set ncand {}
foreach cand $cand {
foreach list $lists {
- if {[lsearch -exact $list $cand] < 0} { lappend ncand $cand }
+ if {[lsearch -exact $list $cand] <= 0} { lappend ncand $cand }
}
}
+ set cand $ncand
## If there's nothing left, report an error.
if {![llength $cand]} {