본문 바로가기

PS/boj

[BOJ] 5100 Jean and Joe’s Clothes

문제 링크

www.acmicpc.net/problem/5100

풀이

각 테스트 케이스마다 한 줄에 5개의 수를 출력해야 한다.
첫 번째는 Joe로, 'M' 또는 'L'일 경우에 카운팅한다.
두 번째는 Jean으로, 12 이상일 경우에 카운팅한다.
세 번째는 Jane으로, 12 미만일 경우에 카운팅한다.
네 번째는 James로, 'S'일 경우에 카운팅한다.
다섯 번째는 아무 것도 해당되지 않는 경우로, 'X'일 경우에 카운팅한다.

Java 코드

더보기
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.stream.Collectors;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder out = new StringBuilder();

        for (int T; (T = Integer.parseInt(in.readLine())) != 0; ) {
            int[] cnt = new int[5];
            while (T-- > 0) {
                String s = in.readLine();

                if ("M".equals(s) || "L".equals(s)) ++cnt[0];
                else if ("S".equals(s)) ++cnt[3];
                else if ("X".equals(s)) ++cnt[4];
                else {
                    int val = Integer.parseInt(s);
                    if (val >= 12) ++cnt[1];
                    else ++cnt[2];
                }
            }
            out.append(
                    Arrays.stream(cnt)
                            .mapToObj(String::valueOf)
                            .collect(Collectors.joining(" ")))
                    .append('\n');
        }

        System.out.println(out);
    }
}

'PS > boj' 카테고리의 다른 글

[BOJ] 14006 Large Ping Pong Tournament  (0) 2021.02.03
[BOJ] 16265 Spreadsheets  (0) 2021.02.03
[BOJ] 20743 Bus Numbers  (0) 2021.01.31
[BOJ] 8711 Odchudzanie  (0) 2021.01.30
[BOJ] 19774 ABCD-код  (0) 2021.01.29