1. 문제 설명 ¶
링크 | http://poj.org/problem?id=3117 |
개요 | 월드컵 축구 경기를 하면 이긴 팀은 3점, 진 팀은 0점, 비긴 팀은 각각 1점씩 획득한다. |
입력 | 팀의 수와 경기 수, 그리고 각 팀의 총 획득 스코어를 입력 (0은 끝을 의미) |
출력 | 몇 번 비겼는지 출력 |
2. 알고리즘 ¶
- 한번도 비기지 않는다면 정상적인 점수는 (경기 횟수 * 3)일 것이다.
- 이길 경우 한 팀이 3점 받고 비길 경우 각 팀이 1점씩 받으므로 승패가 가려지면 총 3점, 안 가려지면 총 2점이 취득될 것임.
- (경기 횟수 * 3)에서 각 팀의 총점을 더한 sum값을 빼면 비긴 횟수가 될 것이다.
3. 소스 코드 ¶
- 처음에 class명을 Main으로 해야 하는 지 몰라서 Compile Error를 아름답게 띄움...-_-;; // 아래 소스 복붙할 때 바꿔 줘야 함
import java.util.Scanner; public class ACM3117 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while(true) { int teams = sc.nextInt(); // 0 <= T <= 200 int matches = sc.nextInt(); // 0 <= N <= 10000 if(teams == 0) break; int sum = 0; for(int i = 0; i < teams; i++) { sc.nextLine(); sc.next(); sum += sc.nextInt(); } System.out.println((matches * 3 - sum)); } } }