Apps

Get the most out of your UNIVERGE BLUE® CONNECT experience by downloading and installing the complimentary desktop and mobile apps. With these apps you can see who is available, chat with colleagues, send text messages to colleagues and customers, place and receive calls, share screens, start video calls and manage files—all from one application—in the office or on the go.

Download the apps below to get started.

recount_votes(voters_prefs, voters, candidates_list, candidates);

return 0; } The implementation includes test cases to verify its correctness. For example, consider the following input:

3 3 1 2 3 1 3 2 2 1 3 This input represents an election with 3 voters and 3 candidates. The output of the program should be:

// Allocate memory for voters and candidates *voters_prefs = malloc(*voters * sizeof(voter_t)); candidate_t *candidates_list = malloc(*candidates * sizeof(candidate_t));

// Function to recount votes void recount_votes(voter_t *voters_prefs, int voters, candidate_t *candidates_list, int candidates) { // Recount votes for (int i = 0; i < voters; i++) { for (int j = 0; j < candidates; j++) { if (candidates_list[voters_prefs[i].preferences[j] - 1].votes == 0) { // Move to next preference voters_prefs[i].preferences[j] = -1; } else { break; } } } }

// Function to eliminate candidate void eliminate_candidate(candidate_t *candidates_list, int candidates, int eliminated) { // Decrement vote counts for eliminated candidate for (int i = 0; i < candidates; i++) { if (candidates_list[i].id == eliminated) { candidates_list[i].votes = 0; } } }