HDU 4802 GPA


我想說STL會上癮,省時省心,自從知道以後一直用現在幾乎每個題都在用。

真的上癮了,只要用得上,基本都會用,,,,,誰來救救我。。。


一道沒有難度的題目,讀懂題意都能做。就是有個權值算個數。。。



9926744 2014-01-05 21:24:46 Accepted 4802 15MS 288K 700 B C++ try it

#include<stdio.h>
#include<map>
#include<string>
using namespace std;
int main()
{
    int n,all,mak;
    double gpa;
    char a[3];
    int i,j;
    map<string ,double> ma;
    ma["A"]=4.0;
    ma["A-"]=3.7;
    ma["B+"]=3.3;
    ma["B"]=3.0;
    ma["B-"]=2.7;
    ma["C+"]=2.3;
    ma["C"]=2.0;
    ma["C-"]=1.7;
    ma["D"]=1.3;
    ma["D-"]=1.0;
    ma["F"]=0;
    while(scanf("%d",&n)!=EOF)
    {
        gpa=0;
        all=0;
        while(n--)
        {
            scanf("%d%s",&mak,a);
            if(ma.find(a)!=ma.end())
                all+=mak,gpa+=ma[a]*mak;
        }
        if(gpa!=0)gpa/=all;
        printf("%.2f\n",gpa);
    }
    return 0;
}


發佈了150 篇原創文章 · 獲贊 35 · 訪問量 19萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章