您的位置:首页 > 其它

2014 ACM/ICPC Asia Regional Anshan Online

2015-09-07 16:56 204 查看

2014 ACM/ICPC Asia Regional Anshan Online

------解题报告

1.HDOJ 5003

题意:

水题,超级大水题。给你一个数字数组,先降序排序,然后用0.95 ^ (i - 1) * ai 求解。边计算边求和。

代码:
int num[550];
double float_num[55];

void init()
{
for (int i = 1; i <= 50; ++i)
float_num[i] = pow(0.95, i - 1); //先打一张幂方表
}

bool cmp(int A, int B)
{
return A > B; //降序排列
}

int main()
{
#ifdef LOCAL
//freopen("in.txt", "r", stdin);
//freopen("out.txt", "w", stdout);
#endif // LOCAL
init();

int T;
int n;
scanf("%d", &T);
while(T--)
{
scanf("%d", &n);
for (int i = 1; i <= n; ++i)
scanf("%d", &num[i]);

sort(num + 1, num + n + 1, cmp);

double sum = 0;

for (int i = 1; i <= n; ++i)
sum += float_num[i] * (double)num[i];

printf("%.10lf\n", sum);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: