added rotate function to even out bias from party => candidate list
This commit is contained in:
parent
acca1c2580
commit
9d217c6678
|
|
@ -1,5 +1,4 @@
|
|||
use itertools::Itertools;
|
||||
|
||||
use crate::header::Header;
|
||||
|
||||
#[derive(Copy,Clone,Debug,PartialEq)]
|
||||
|
|
@ -72,7 +71,10 @@ impl Ballot {
|
|||
let mut votes = Vec::<usize>::new();
|
||||
|
||||
for party_id in self.votes {
|
||||
let start = votes.len();
|
||||
votes.extend(header.parties[party_id].member_ids.iter().copied());
|
||||
let votes_end = &mut votes[start..];
|
||||
votes_end.rotate_left(self.paper_id % votes_end.len());
|
||||
}
|
||||
|
||||
Ballot {
|
||||
|
|
|
|||
Loading…
Reference in New Issue