25206번: 너의 평점은 (acmicpc.net)
1. 내 코드
import java.util.HashMap;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// 학점 * 전공 평점 넣을 곳
double total = 0.0;
double AllGradeSum = 0.0;
// 과목 평점을 숫자로 변환하는 HashMap
// 키 값으로 전공 평점이 들어오면 value 값으로 변환
HashMap<String, Double> map = new HashMap<>(){
{
put("A+",4.5);
put("A0", 4.0);
put("B+",3.5);
put("B0",3.0);
put("C+", 2.5);
put("C0", 2.0);
put("D+",1.5);
put("D0", 1.0);
put("F", 0.0);
}
};
for (int test_case = 0; test_case < 20; test_case++) {
sc.next();
double grade = sc.nextDouble();
String GPA = sc.next();
// 과목평점은 문자열로 왔으니 double로 전환, 만약 GPA가 "P"이면 넘어가기
if(GPA.equals("P")){continue;}
total += grade*map.get(GPA);
AllGradeSum += grade;
}
System.out.println(total/AllGradeSum);
}
}