#include<iostream> #include<string> #include<math.h> #include<stdlib.h> #include<iomanip> using namespace std; double juliZero(int x1,int y1){ double a2=sqrt(2); double sum=1.0; if(x1==y1&&x1==0) return 0; sum+=((x1+y1+1)/2.0*(x1+y1)-y1)*a2; int i=1; int j=2; for(;j<=(x1+y1);++j,++i){ sum+=sqrt(pow(i,2)+pow(j,2)); } return sum; } void main(){ int n; while(cin>>n){ int x1,x2,y1,y2; while(n--){ cin>>x1>>y1>>x2>>y2; double sum1=0.0; double sum2=0.0; sum1=juliZero(x1,y1); sum2=juliZero(x2,y2); sum2=sum2-sum1; if(sum2<0) sum2=-sum2; cout<<setprecision(3)<<fixed<<sum2<<endl; } } }
杭电ACM 第2073题
最新推荐文章于 2021-04-18 23:14:19 发布