换头法的尝试,为什么失败?

P3802 小魔女帕琪

@[Chenhy2022](/user/724677) ```cpp and ``` 是什么操作 ???不是 ```cpp && ```
by __er @ 2022-07-01 15:44:17


@[YMXX](/user/713955) 都可以。
by irris @ 2022-07-01 15:45:45


@[AlgorithmerSnow](/user/419487) 没用的知识又增加了![](//图.tk/5)
by __er @ 2022-07-01 15:47:04


@[Chenhy2022](/user/724677) > 输出一行一个实数代表答案,四舍五入保留三位小数。 然后很显然会 TLE,数据范围是 $10^9$。 尝试用组合数学意义来考虑。不要推到一半就暴力做了。要不然怎么可能是绿题。
by irris @ 2022-07-01 15:47:38


用这个试试 ``` #include <cstdio> double a[10]; int n; double ans; int main() { for (int i = 1; i <= 7; ++i) { scanf("%lf", &a[i]); n += a[i]; } if (n >= 7) { ans = n - 6; for (int i = 1; i <= 7; ++i) ans *= a[i] / (n - i + 1) * i; } printf("%.3lf", ans); return 0; } ```
by www101 @ 2022-12-01 16:47:57


|