我呢,又是来写题解的
话不多说,开讲(咔嚓):
思路简单,数学题一道
每个圆环输入是第一个是蓝色,第二个是黄色
要求蓝色面积
求圆=3.1415926535897932384626433半径
要先排个序
从n枚举到1
因为要先加最大的
再开一个j=1
每次j++
j%2是1,代表那个圆是蓝色的,要加上
否则,代表圆是黄色的,要减去
最后保留6位小数
代码文献
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,a[101]={0};
double c=0;
cin>>n;
for(int i=1;i<=n;i++)
cin>>a[i];
sort(a+1,a+1+n);
for(int i=n,j=1;i>=1;i--,j++){
if(j%2)
c+=3.1415926535897932384626433*a[i]*a[i];
else
c-=3.1415926535897932384626433*a[i]*a[i];
}
printf("%.6f",c);
return 0;
}
感谢 龚子昂 的支持
感谢 smile_zyk 的支持
感谢 Itsuki 的支持