提交时间:2024-03-09 17:00:30

运行 ID: 137023

#include<bits/stdc++.h> using namespace std; int main() { int m; cin>>m; for(int i=1;i<=m;i++) { int n; double a[605]; cin>>n; for(int j=1;j<=n;j++)cin>>a[j]; sort(a+1,a+n+1);//把半径从小排到大 double s=0; int total=0; for(int x=n;x>=1;x--)//从大开始选择放,sort默认从小到大 { if(s>=20) { break; } else { s+=2*sqrt(a[x]*a[x]-1);//sqrt()算勾股定理 total++; } } cout<<total<<endl; } return 0; }