题目大意:给出一个等腰三角形的高和底边长,要求你求出所有内切圆的周长和

解题思路:等腰三角形底边长为B,高为H,设最底部的那个圆的半径为R,三角形的腰为L,由勾股定理得,L = sqrt(B * B / 4 + H * H),由等面积公式2 *( 0.5 * L * R  + 0.5* B * R *0.5)= 0.5  * H * B,得R = H * B /( 2 * L + B),然后再由三角形的相似性质得下一个内切圆的半径

#include<algorithm>
#include<cmath>
#include<cstdio>
#include<cstring>
using namespace std;
#define PI asin(1.0)*2
int main() {

	double B, H, r, h, R, L;
	int test;
	scanf("%d",&test);
	while(test--) {
		scanf("%lf%lf",&B, &H);
		L =  sqrt(H * H + B * B/4);
		R =  B * H / ( 2 * L + B);
		h = H;
		r = R;
		while(r >= 0.000001) {
			h = h - 2 * r;
			r = h * R / H;	
		}
		printf("%13lf\n",(H-h) *PI);
		if(test)
			printf("\n");
	}
	return 0;
}