Damian Danilovj got all 5 correct.
The algorithm goes through every possible version of the correct answer then determines each contestant's score (number of correct responses). Then, the pattern is excluded unless all 5 contestants got a different score.
There was only one pattern with 5 different scores.
--------------- code:
from itertools import permutations
players = 'ABCDE'
A = 'VWXYZ'
B = 'YZVXW'
C = 'WYXZV'
D = 'YWVXZ'
E = 'YZXVW'
ans = [A,B,C,D,E]
winners = []
winning_scores = []
for perm in permutations('VWXYZ',5):
scores = [0 for i in range(5)]
for i in range(5):
for j in range(5):
if perm[j] == ans[i][j]:
scores[i] += 1
print(perm,scores)
if len(set(scores)) == 5:
winners.append(perm)
winning_scores.append(scores)
print(' winner',perm,scores)
for i,v in enumerate(winners):
print('The winner is', players[winning_scores[i].index(5)])
print(' whose answers were', winners[i])
================= print out:
('V', 'W', 'X', 'Y', 'Z') [5, 0, 1, 2, 1]
('V', 'W', 'X', 'Z', 'Y') [3, 0, 2, 1, 1]
('V', 'W', 'Y', 'X', 'Z') [3, 1, 0, 3, 0]
('V', 'W', 'Y', 'Z', 'X') [2, 0, 1, 1, 0]
('V', 'W', 'Z', 'X', 'Y') [2, 1, 0, 2, 0]
('V', 'W', 'Z', 'Y', 'X') [3, 0, 0, 1, 0]
('V', 'X', 'W', 'Y', 'Z') [3, 0, 0, 1, 0]
('V', 'X', 'W', 'Z', 'Y') [1, 0, 1, 0, 0]
('V', 'X', 'Y', 'W', 'Z') [2, 0, 0, 1, 0]
('V', 'X', 'Y', 'Z', 'W') [1, 1, 1, 0, 1]
('V', 'X', 'Z', 'W', 'Y') [1, 0, 0, 0, 0]
('V', 'X', 'Z', 'Y', 'W') [2, 1, 0, 0, 1]
('V', 'Y', 'W', 'X', 'Z') [2, 1, 1, 2, 0]
('V', 'Y', 'W', 'Z', 'X') [1, 0, 2, 0, 0]
('V', 'Y', 'X', 'W', 'Z') [3, 0, 2, 1, 1]
('V', 'Y', 'X', 'Z', 'W') [2, 1, 3, 0, 2]
('V', 'Y', 'Z', 'W', 'X') [1, 0, 1, 0, 0]
('V', 'Y', 'Z', 'X', 'W') [1, 2, 1, 1, 1]
('V', 'Z', 'W', 'X', 'Y') [1, 2, 0, 1, 1]
('V', 'Z', 'W', 'Y', 'X') [2, 1, 0, 0, 1]
('V', 'Z', 'X', 'W', 'Y') [2, 1, 1, 0, 2]
('V', 'Z', 'X', 'Y', 'W') [3, 2, 1, 0, 3]
('V', 'Z', 'Y', 'W', 'X') [1, 1, 0, 0, 1]
('V', 'Z', 'Y', 'X', 'W') [1, 3, 0, 1, 2]
('W', 'V', 'X', 'Y', 'Z') [3, 0, 2, 1, 1]
('W', 'V', 'X', 'Z', 'Y') [1, 0, 3, 0, 1]
('W', 'V', 'Y', 'X', 'Z') [1, 1, 1, 2, 0]
('W', 'V', 'Y', 'Z', 'X') [0, 0, 2, 0, 0]
('W', 'V', 'Z', 'X', 'Y') [0, 1, 1, 1, 0]
('W', 'V', 'Z', 'Y', 'X') [1, 0, 1, 0, 0]
('W', 'X', 'V', 'Y', 'Z') [2, 1, 1, 2, 0]
('W', 'X', 'V', 'Z', 'Y') [0, 1, 2, 1, 0]
('W', 'X', 'Y', 'V', 'Z') [1, 0, 1, 1, 1]
('W', 'X', 'Y', 'Z', 'V') [0, 0, 3, 0, 0]
('W', 'X', 'Z', 'V', 'Y') [0, 0, 1, 0, 1]
('W', 'X', 'Z', 'Y', 'V') [1, 0, 2, 0, 0]
('W', 'Y', 'V', 'X', 'Z') [1, 2, 2, 3, 0]
('W', 'Y', 'V', 'Z', 'X') [0, 1, 3, 1, 0]
('W', 'Y', 'X', 'V', 'Z') [2, 0, 3, 1, 2]
('W', 'Y', 'X', 'Z', 'V') [1, 0, 5, 0, 1]
('W', 'Y', 'Z', 'V', 'X') [0, 0, 2, 0, 1]
('W', 'Y', 'Z', 'X', 'V') [0, 1, 3, 1, 0]
('W', 'Z', 'V', 'X', 'Y') [0, 3, 1, 2, 1]
('W', 'Z', 'V', 'Y', 'X') [1, 2, 1, 1, 1]
('W', 'Z', 'X', 'V', 'Y') [1, 1, 2, 0, 3]
('W', 'Z', 'X', 'Y', 'V') [2, 1, 3, 0, 2]
('W', 'Z', 'Y', 'V', 'X') [0, 1, 1, 0, 2]
('W', 'Z', 'Y', 'X', 'V') [0, 2, 2, 1, 1]
('X', 'V', 'W', 'Y', 'Z') [2, 0, 0, 1, 0]
('X', 'V', 'W', 'Z', 'Y') [0, 0, 1, 0, 0]
('X', 'V', 'Y', 'W', 'Z') [1, 0, 0, 1, 0]
('X', 'V', 'Y', 'Z', 'W') [0, 1, 1, 0, 1]
('X', 'V', 'Z', 'W', 'Y') [0, 0, 0, 0, 0]
('X', 'V', 'Z', 'Y', 'W') [1, 1, 0, 0, 1]
('X', 'W', 'V', 'Y', 'Z') [3, 1, 0, 3, 0]
('X', 'W', 'V', 'Z', 'Y') [1, 1, 1, 2, 0]
('X', 'W', 'Y', 'V', 'Z') [2, 0, 0, 2, 1]
('X', 'W', 'Y', 'Z', 'V') [1, 0, 2, 1, 0]
('X', 'W', 'Z', 'V', 'Y') [1, 0, 0, 1, 1]
('X', 'W', 'Z', 'Y', 'V') [2, 0, 1, 1, 0]
('X', 'Y', 'V', 'W', 'Z') [1, 1, 1, 2, 0]
('X', 'Y', 'V', 'Z', 'W') [0, 2, 2, 1, 1]
('X', 'Y', 'W', 'V', 'Z') [1, 0, 1, 1, 1]
('X', 'Y', 'W', 'Z', 'V') [0, 0, 3, 0, 0]
('X', 'Y', 'Z', 'V', 'W') [0, 1, 1, 0, 2]
('X', 'Y', 'Z', 'W', 'V') [0, 0, 2, 0, 0]
('X', 'Z', 'V', 'W', 'Y') [0, 2, 0, 1, 1]
('X', 'Z', 'V', 'Y', 'W') [1, 3, 0, 1, 2]
('X', 'Z', 'W', 'V', 'Y') [0, 1, 0, 0, 2]
('X', 'Z', 'W', 'Y', 'V') [1, 1, 1, 0, 1]
('X', 'Z', 'Y', 'V', 'W') [0, 2, 0, 0, 3]
('X', 'Z', 'Y', 'W', 'V') [0, 1, 1, 0, 1]
('Y', 'V', 'W', 'X', 'Z') [1, 2, 0, 3, 1]
('Y', 'V', 'W', 'Z', 'X') [0, 1, 1, 1, 1]
('Y', 'V', 'X', 'W', 'Z') [2, 1, 1, 2, 2]
('Y', 'V', 'X', 'Z', 'W') [1, 2, 2, 1, 3]
('Y', 'V', 'Z', 'W', 'X') [0, 1, 0, 1, 1]
('Y', 'V', 'Z', 'X', 'W') [0, 3, 0, 2, 2]
('Y', 'W', 'V', 'X', 'Z') [2, 3, 0, 5, 1]
winner ('Y', 'W', 'V', 'X', 'Z') [2, 3, 0, 5, 1]
('Y', 'W', 'V', 'Z', 'X') [1, 2, 1, 3, 1]
('Y', 'W', 'X', 'V', 'Z') [3, 1, 1, 3, 3]
('Y', 'W', 'X', 'Z', 'V') [2, 1, 3, 2, 2]
('Y', 'W', 'Z', 'V', 'X') [1, 1, 0, 2, 2]
('Y', 'W', 'Z', 'X', 'V') [1, 2, 1, 3, 1]
('Y', 'X', 'V', 'W', 'Z') [1, 2, 0, 3, 1]
('Y', 'X', 'V', 'Z', 'W') [0, 3, 1, 2, 2]
('Y', 'X', 'W', 'V', 'Z') [1, 1, 0, 2, 2]
('Y', 'X', 'W', 'Z', 'V') [0, 1, 2, 1, 1]
('Y', 'X', 'Z', 'V', 'W') [0, 2, 0, 1, 3]
('Y', 'X', 'Z', 'W', 'V') [0, 1, 1, 1, 1]
('Y', 'Z', 'V', 'W', 'X') [0, 3, 0, 2, 2]
('Y', 'Z', 'V', 'X', 'W') [0, 5, 0, 3, 3]
('Y', 'Z', 'W', 'V', 'X') [0, 2, 0, 1, 3]
('Y', 'Z', 'W', 'X', 'V') [0, 3, 1, 2, 2]
('Y', 'Z', 'X', 'V', 'W') [1, 3, 1, 1, 5]
('Y', 'Z', 'X', 'W', 'V') [1, 2, 2, 1, 3]
('Z', 'V', 'W', 'X', 'Y') [0, 1, 0, 1, 0]
('Z', 'V', 'W', 'Y', 'X') [1, 0, 0, 0, 0]
('Z', 'V', 'X', 'W', 'Y') [1, 0, 1, 0, 1]
('Z', 'V', 'X', 'Y', 'W') [2, 1, 1, 0, 2]
('Z', 'V', 'Y', 'W', 'X') [0, 0, 0, 0, 0]
('Z', 'V', 'Y', 'X', 'W') [0, 2, 0, 1, 1]
('Z', 'W', 'V', 'X', 'Y') [1, 2, 0, 3, 0]
('Z', 'W', 'V', 'Y', 'X') [2, 1, 0, 2, 0]
('Z', 'W', 'X', 'V', 'Y') [2, 0, 1, 1, 2]
('Z', 'W', 'X', 'Y', 'V') [3, 0, 2, 1, 1]
('Z', 'W', 'Y', 'V', 'X') [1, 0, 0, 1, 1]
('Z', 'W', 'Y', 'X', 'V') [1, 1, 1, 2, 0]
('Z', 'X', 'V', 'W', 'Y') [0, 1, 0, 1, 0]
('Z', 'X', 'V', 'Y', 'W') [1, 2, 0, 1, 1]
('Z', 'X', 'W', 'V', 'Y') [0, 0, 0, 0, 1]
('Z', 'X', 'W', 'Y', 'V') [1, 0, 1, 0, 0]
('Z', 'X', 'Y', 'V', 'W') [0, 1, 0, 0, 2]
('Z', 'X', 'Y', 'W', 'V') [0, 0, 1, 0, 0]
('Z', 'Y', 'V', 'W', 'X') [0, 1, 1, 1, 0]
('Z', 'Y', 'V', 'X', 'W') [0, 3, 1, 2, 1]
('Z', 'Y', 'W', 'V', 'X') [0, 0, 1, 0, 1]
('Z', 'Y', 'W', 'X', 'V') [0, 1, 2, 1, 0]
('Z', 'Y', 'X', 'V', 'W') [1, 1, 2, 0, 3]
('Z', 'Y', 'X', 'W', 'V') [1, 0, 3, 0, 1]
The winner is D
whose answers were ('Y', 'W', 'V', 'X', 'Z')