여러 자리를 한 번에 뽑는 선거를 생각하자. 채워야 할 자리는 k개다. 유권자는 저마다 가장 선호하는 후보 k명을 순위대로 적어 낸다. 후보는 알파벳 소문자 한 글자로 구분하고, 1순위가 맨 앞, 2순위가 그다음에 오는 식이다.
당선자는 여러 라운드에 걸쳐 정한다. 각 라운드에서 유권자는 자기 명단에서 아직 뽑히지 않은 후보 중 가장 앞선 한 명에게 투표한다. 표를 가장 많이 받은 후보를 당선 명단에 넣는다. 최다 득표가 여럿이면 그 후보를 모두 넣되, 그러면 당선 인원이 k명을 넘어가는 경우에는 알파벳 순으로 앞선 후보부터 남은 자리만큼만 뽑는다. 예를 들어 두 명을 더 뽑아야 하는데 'a', 'x', 'z'의 득표수가 모두 같다면 'a'와 'x'를 뽑는다. k명이 다 뽑히면 선거는 끝난다.
입력은 여러 개의 선거로 이루어진다. 각 선거의 첫 줄에는 채워야 할 자리 수 k (1≤k≤26)와 유권자 수 n (1≤n≤1000)이 정수로 주어진다. 이어서 n개의 줄에 알파벳 소문자 k개가 주어진다. 같은 후보에게 두 번 투표할 수는 없으므로 한 줄 안에서 같은 글자가 되풀이되지 않는다. 입력의 마지막 줄에는 0이 두 개 주어진다.
선거마다 한 줄씩 출력한다. 각 줄에 Election, 공백 한 칸, 선거 번호(1부터 시작하는 일련번호), 콜론과 공백 한 칸을 차례로 출력한 다음, 뽑힌 후보를 뽑힌 순서대로 이어 붙여 출력한다. 같은 라운드에서 뽑힌 후보는 알파벳 순으로 쓴다.