码迷,mamicode.com
首页 > 编程语言 > 详细

【HDU4802】GPA C++语法基础题(真是瞎了)

时间:2015-02-03 17:28:48      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:hdu4802   gpa   c++语法基础题   

#include <stdio.h>
int main()
{
	puts("转载请注明出处谢谢");
	puts("http://blog.csdn.net/vmurder/article/details/43449913");
}


看题意的时间远比写的时间长?

估计是bestcoder某round 的T1?

我要写的不是4810么?……


题意:

多组数据,每组输入n次成绩ci、leveli

然后每个leveli都是个字符串,都对应一个分数si,


然后照下面式子输出

技术分享

什么?你问我题解?上面的题意就是题解!

代码:

#include <map>
#include <string>
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
#define N 100
#define eps 1e-5
using namespace std;

map<string,double>M;
double s,sum1,sum2;
string level;
int n;
void init()
{
	M["A"]=4.0;
	M["A-"]=3.7;
	M["B+"]=3.3;
	M["B"]=3.0;
	M["B-"]=2.7;
	M["C+"]=2.3;
	M["C"]=2.0;
	M["C-"]=1.7;
	M["D"]=1.3;
	M["D-"]=1.0;
	M["F"]=0;
}
int main()
{
	freopen("test.in","r",stdin);
	init();	

	int i,j,k;
	while(scanf("%d",&n)!=EOF)
	{
		sum1=sum2=0;
		while(n--)
		{
			cin>>s>>level;
			if(level=="P"||level=="N")continue;
			sum1+=s*M[level];
			sum2+=s;
		}
		if(sum2<eps)puts("0.00");
		else printf("%.2lf\n",sum1/sum2);
	}
	return 0;
}


【HDU4802】GPA C++语法基础题(真是瞎了)

标签:hdu4802   gpa   c++语法基础题   

原文地址:http://blog.csdn.net/vmurder/article/details/43449913

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!