반응형

https://www.acmicpc.net/problem/25206

 

25206번: 너의 평점은

인하대학교 컴퓨터공학과를 졸업하기 위해서는, 전공평점이 3.3 이상이거나 졸업고사를 통과해야 한다. 그런데 아뿔싸, 치훈이는 깜빡하고 졸업고사를 응시하지 않았다는 사실을 깨달았다! 치

www.acmicpc.net

 

import java.util.Scanner;
import java.util.HashMap;

public class Main {
    public static void main(String args[]) {
        Scanner sc = new Scanner(System.in);
        
        HashMap<String,Double> pointMap = new HashMap<String,Double>();
        pointMap.put("A+",4.5);
        pointMap.put("A0",4.0);
        pointMap.put("B+",3.5);
        pointMap.put("B0",3.0);
        pointMap.put("C+",2.5);
        pointMap.put("C0",2.0);
        pointMap.put("D+",1.5);
        pointMap.put("D0",1.0);
        pointMap.put("F",0.0);
        
        int creditSum=0; //이수학점  총합
        Double scoreSum=0.0; //합산점수
        
        while(sc.hasNextLine()){
            String line = sc.nextLine();
            Scanner lineScanner = new Scanner(line);
            //과목명은 패스
            lineScanner.next();
            
            Double credit = Double.parseDouble(lineScanner.next());
            String score =  lineScanner.next();
            
            Double point=0.0;
            
            //P 과목은 패스
            if(!"P".equals(score)){
                point = pointMap.get(score);
                //System.out.println("합산할 점수 : " + point * credit);
                scoreSum += point * credit;
                creditSum += credit;
            }
            
            lineScanner.close();
        }
        
        //System.out.println("이수학점 총합 : " + creditSum);
        //System.out.println("합산 점수 : " + scoreSum);
        if(creditSum == 0){//합산점수가 0인경우 평점 0.0 출력
            System.out.println("0.000000");
        }else{
            System.out.printf("%.6f",scoreSum/creditSum);
        }
        
    }
}

처음에 F인 과목까지 계산에서 제외해버려서 자꾸 틀렸다고 나왔었다..

P인 과목만 제외고 F점수는 포함

문제를 잘 이해해야겠다 ㅠ.,ㅠ

 

* 학습내용

1.  nextLine() : "\n" 개행문자도 입력 받는다.

next()다음에 nextLine()을 하면 개행문자가 들어간다.

hasNextLine도 마찬가지.

 

2. lineScanner() : 한 줄 입력받기. 처음 써봤다.

 

반응형

'코딩 관련 > 코딩문제풀기' 카테고리의 다른 글

[JAVA] 9012번 괄호  (0) 2023.03.13
[JAVA] 그룹 단어 체커  (0) 2023.03.12
[JAVA] 크로아티아 알파벳  (0) 2023.03.11
[JAVA] 직사각형에서 탈출  (0) 2023.03.09
[JAVA] 4344번 평균은 넘겠지 문제  (0) 2023.03.09

+ Recent posts