2014 ACM/ICPC Asia Regional Anshan Online
2014 ACM/ICPC Asia Regional Anshan Online
-----解題報告
1.HDOJ 5003
タイトル:
水問題、スーパー大水問題.数値配列をあげて、まず降順に並べ替えて、それから0.95^(i-1)*aiで解きます.計算しながら和を求める.
コード:
-----解題報告
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
", sum);
}
return 0;
}