백준 25206

김경욱·2025년 8월 3일

백준

목록 보기
17/121

import java.util.Scanner;

public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);

    double count = 0;

    double total = 0;
    for (int i = 0; i < 20; i++) {


        String line = in.nextLine();
        String[] words = line.split(" ");

        {
            if (!words[2].equals("P")) {

                if (words[2].equals("A+"))
                {
                    double word = Double.parseDouble(words[1]);
                    total+= word * 4.5;
                    count += word;
                }
                if (words[2].equals("A0"))
                {
                    double word = Double.parseDouble(words[1]);
                    total+= word * 4.0;
                    count += word;
                }
                if (words[2].equals("B+"))
                {
                    double word = Double.parseDouble(words[1]);
                    total+= word * 3.5;
                    count += word;
                }
                if (words[2].equals("B0"))
                {
                    double word = Double.parseDouble(words[1]);
                    total+= word * 3.0;
                    count += word;
                }
                if (words[2].equals("C+"))
                {
                    double word = Double.parseDouble(words[1]);
                    total+= word * 2.5;
                    count += word;
                }
                if (words[2].equals("C0"))
                {
                    double word = Double.parseDouble(words[1]);
                    total+= word * 2.0;
                    count += word;
                }
                if (words[2].equals("D+"))
                {
                    double word = Double.parseDouble(words[1]);
                    total+= word * 1.5;
                    count += word;
                }
                if (words[2].equals("D0"))
                {
                    double word = Double.parseDouble(words[1]);
                    total+= word;
                    count += word;
                }
                if (words[2].equals("F"))
                {
                    double word = Double.parseDouble(words[1]);
                    total+=0;
                    count += word;
                }





                continue;
            }


        }




    }
    System.out.println(total / count);
}

}

입력 받은 줄을 공백을 기준으로 과목명,학점,과목 평점이 주어진다. 나는 이때 공백을 기준으로 나누는 코드를 까먹어 지피티를 통해 String[] words = line.split(" ");란 코드를 다시 알게 되었다. .split(" "); 그 이후로는 뭔가 이런 유형의 문제들을 많이 풀어본 것 같아 그렇게 어렵지 않게 풀은 것 같다. 그 중 내가 깨달은 것은 문자를 정수로 바꾸는 Integer.parseInt()함수를 알고 있었는데 실수형인 double로 바꾸는 걸 몰라서 지피티를 통해 Double.parseDouble()을 알게 되었다. 과목 평점이 P면 계산에 포함을 안 시킨다는걸 생각한 후 words[1]을 문자에서 더블로 바꾸는법만 알면 쉽게 풀리는 것 같다.

0개의 댓글