【瞎搞】 ZOJ 1543 Stripies
两个粒子相撞 变成一个粒子 其质量为m=2*sqrt(m1*m2)
求最后剩下一个粒子时可能的最小质量
瞎搞发现从大到小和会最小
#include <iostream> #include<stdio.h> #include<algorithm> #include<string.h> #include<math.h> using namespace std; int cmp(double x,double y) { return x>y; } int main() { int n; double a[110]; while(scanf("%d",&n)!=EOF) { for(int i=0;i<n;i++) scanf("%lf",&a[i]); sort(a,a+n,cmp); double ans=a[0]; for(int i=1;i<n;i++) { ans=2*sqrt(ans*a[i]); } printf("%.3lf\n",ans); } return 0; }