首页 > 代码库 > hdu 4802 GPA

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