본문 바로가기
백준 알고리즘

[백준][C++] 25206번 : 너의 평점은

by 탱글한푸딩 2024. 6. 15.
반응형

문제

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


코드

#include <iostream>
#include <string>
using namespace std;

#define SubjectCnt 20

int main()
{
	string subject;
	float inputScore;
	string grade;

    float sumScore = 0;
    float totalScore = 0;
    
    for (int i = 0; i < SubjectCnt; i++)
    {
        cin >> subject >> inputScore >> grade;

        totalScore += inputScore;

        if (grade == "P") totalScore -= inputScore;
        else if (grade == "A+") sumScore += (inputScore * 4.5);
        else if (grade == "A0") sumScore += (inputScore * 4.0);
        else if (grade == "B+") sumScore += (inputScore * 3.5);
        else if (grade == "B0") sumScore += (inputScore * 3.0);
        else if (grade == "C+") sumScore += (inputScore * 2.5);
        else if (grade == "C0") sumScore += (inputScore * 2.0);
        else if (grade == "D+") sumScore += (inputScore * 1.5);
        else if (grade == "D0") sumScore += (inputScore * 1.0);
        else if (grade == "F")  sumScore += (inputScore * 0.0);
    }

	cout << fixed;
	cout.precision(6);
	cout << sumScore / totalScore << '\n';

	return 0;

}
반응형