package comsoc // Vote par approbation // thresholds est un slice d'entiers strictement positifs func ApprovalSWF(p Profile, thresholds []int) (count Count, err error) { count = make(Count) alts := make([]Alternative, 0) for i := 1; i <= len(p[0]); i++ { alts = append(alts, Alternative(i)) } err = checkProfileAlternative(p, alts) for index, alt := range p { for i := 0; i < thresholds[index]; i++ { count[alt[i]] += 1 } } return } func ApprovalSCF(p Profile, thresholds []int) (bestAlts []Alternative, err error) { alts, err := ApprovalSWF(p, thresholds) bestAlts = maxCount(alts) return }