728x90
문제
https://www.acmicpc.net/problem/11637
풀이
N명의 후보자에 대한 투표수가 주어질 때 다음 조건에 따라 올바른 문구를 출력하면 된다.
- 최다 득표자가 과반수 득표를 했을 때
- 최다 득표자가 절반 이하의 득표를 했을 때
- 최다 득표자가 2명 이상일 때
이를 위해서는 최다 득표 수와, 최다 득표자의 순서, 전체 투표수를 구해야 한다.
int max = -1, idx = -1, sum = 0;
for (int i = 0; i < N; ++i) {
A[i] = Integer.parseInt(br.readLine());
sum += A[i];
// Solve
if (A[i] > max) {
max = A[i];
idx = i;
}
}
이후 최다 득표자가 2명인지 확인 후
int maxCnt = 0;
for (int a : A) {
if (a == max) {
++maxCnt;
}
}
문제에서 주어진 조건에 따라 올바른 문구를 출력하면 된다.
if (maxCnt == 1) {
sb.append(max > sum >> 1 ? "majority winner " : "minority winner ").append(idx + 1).append("\\n");
} else {
sb.append("no winner\\n");
}
풀이 시간
≤ 5m
소스코드
https://github.com/rogi-rogi/problem-solving/blob/main/baekjoon-online-judge/practice/11637.java
problem-solving/baekjoon-online-judge/practice/11637.java at main · rogi-rogi/problem-solving
Daily Problem Solving Challenges. Contribute to rogi-rogi/problem-solving development by creating an account on GitHub.
github.com
728x90
'PS > Baekjoon Online Judge' 카테고리의 다른 글
[백준 14655] 욱제는 도박쟁이야!! [Java] (0) | 2025.04.27 |
---|---|
[백준 14402] 야근 [Java] (0) | 2025.04.25 |
[백준 01758] 알바생 강호 [Java] (0) | 2025.04.23 |
[백준 03991] 한번 쏘면 멈출 수 없어 [Java] (0) | 2025.04.22 |
[백준 28238] 정보 선생님의 야망 [Java] (0) | 2025.04.22 |