hdu 4802 GPA

水题

#include <cstdio>
#include <cstring>
using namespace std;
int main()
{
    int n;
    int c,sum1;
    double sum2;
    char str[10];
    while(scanf("%d",&n)!=EOF)
    {
        int i;
        sum1=sum2=0;
        for(i=1;i<=n;i++)
        {
            scanf("%d %s",&c,str);
            sum1+=c;
            int len=strlen(str);
            if(str[0]=='A')
            {
                if(len==1) sum2+=4*c;
                else sum2+=3.7*c;
            }
            if(str[0]=='B')
            {
                if(len==1) sum2+=3.0*c;
                else if(str[1]=='+') sum2+=3.3*c;
                else sum2+=2.7*c;
            }
            if(str[0]=='C')
            {
                if(len==1) sum2+=2.0*c;
                else
                {
                    if(str[1]=='+') sum2+=2.3*c;
                    if(str[1]=='-') sum2+=1.7*c;
                }
            }
            if(str[0]=='D')
            {
                if(len==1) sum2+=1.3*c;
                else sum2+=1.0*c;
            }
            if(str[0]=='P'||str[0]=='N') sum1-=c;
        }
        if(sum2==0) printf("0.00\n");
        else printf("%.2lf\n",sum2/(1.0*sum1));
    }
    return 0;
}
View Code

 

posted @ 2014-07-10 16:18  贝尔摩德  阅读(172)  评论(0编辑  收藏  举报