JAVA
다수결의 원칙
코린이도이
2023. 9. 24. 14:41
- 후보가 1번부터 5번까지 있는 투표를 진행하여 vote 배열 안에 저장되어 있습니다.
- 이 vote 배열을 개표해서 어느 후보가 가장 많은 표를 획득했는지 알 수 있습니다.
1. 배열에 들어있는 값이 가장 많은 숫자를 변수 winner에 저장하여 "투표의 승자는 winner번 후보입니다." 문장을 출력하는 코드를 작성하세요.
tip
- 각 숫자들을 저장할 배열을 선언해서 사용하면 편리하게 구할 수 있습니다.
public class Main {
public static void main(String args[]) {
int[] vote = new int[] {1, 3, 2, 3, 1, 2, 5, 3, 4, 2, 5, 1, 2, 3, 4, 2, 4, 2, 3, 4, 1, 5, 3, 4, 2, 4, 1, 2, 3, 4, 1, 5, 2, 3, 1, 5, 2, 3, 4, 2, 5, 1, 5, 2, 3 ,4, 1, 3, 3, 2};
int winner = 0;
int [] voteCount = new int[] {0,0,0,0,0};
for (int i = 0; i < voteCount.length; i++) {
voteCount[vote[i]-1]++;
}
int max = 0;
for(int i = 0; i < voteCount.length; i++) {
if(voteCount[i] > max) {
max = voteCount[i];
winner = i+2;
}
}
System.out.println("투표의 승자는 " + winner + "번 후보입니다.");
}
}
풀긴 풀었는데 답이 왜 맞게 나온지 모르겠음