1. 문제 설명 ¶
링크 | http://poj.org/problem?id=3117 |
개요 | 월드컵 축구 경기를 하면 이긴 팀은 3점, 진 팀은 0점, 비긴 팀은 각각 1점씩 획득한다. |
입력 | 팀의 수와 경기 수, 그리고 각 팀의 총 획득 스코어를 입력 (0은 끝을 의미) |
출력 | 몇 번 비겼는지 출력 |
2. 알고리즘 ¶
- 한번도 비기지 않는다면 정상적인 점수는 (경기 횟수 * 3)일 것이다.
- 이길 경우 한 팀이 3점 받고 비길 경우 각 팀이 1점씩 받으므로 승패가 가려지면 총 3점, 안 가려지면 총 2점이 취득될 것임.
- (경기 횟수 * 3)에서 각 팀의 총점을 더한 sum값을 빼면 비긴 횟수가 될 것이다.
3. Status ¶
Run ID | User | Problem | Result | Memory | Time | Language | Code Length | Submit Time |
8870504 | enochbible | 3117 | Accepted | 5236K | 219MS | Java | 453B | 2011-07-12 09:36:06 |
8870493 | enochbible | 3117 | Compile Error | Java | 456B | 2011-07-12 09:35:27 |
- 처음에 class명을 Main으로 해야 하는 지 몰라서 Compile Error를 아름답게 띄움...-_-;; // 아래 소스도 복붙할 때 바꿔 줘야 함
4. Source ¶
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)); } } }
- 범위에 따른 예외 처리 따위 하나도 안했는데 Accepted 되었을 뿐이고...-_-
- 몇번 해보면서 느끼는건데 poj는 사소한 예외는 신경 안쓰는 경우가 많은거 같더라구요....;; 괜히 Accept안되니까 우리가 온갖 예외처리를 다 잡아넣어서 그렇지요..;;;;; -김태진
- 몇번 해보면서 느끼는건데 poj는 사소한 예외는 신경 안쓰는 경우가 많은거 같더라구요....;; 괜히 Accept안되니까 우리가 온갖 예외처리를 다 잡아넣어서 그렇지요..;;;;; -김태진