你拥有一个无限高度的水池,他的底面长和宽是A,B,初始我们向水池中注入H深的水,现在我们将一个底面为长a,宽b高为h的铁制长方体(密封不透水)以底面朝下垂直放入水池中,求问水池水位变为多少。(柱体不会浮起来)
输入格式:
第一行输入 t(0<t<=10)组样例
每组样例分两行第一行A,B,H 表示水池底面长宽和水位高度
第二行输入a,b,h标示长方体体底面长宽和高度
(0<B,A<100),(0<b,a<min(A,B))
(0<h<1000),(0<H<1000)
输出格式:
输出铁柱体放入后的水位高度,保留两位小数
输入样例:
1
6 8 7
4 4 6
输出样例:
9.00
答案:
#include<stdio.h>
int main(){
int t,a,b,h,A,B,H;
double s;
scanf("%d",&t);
while(t--){
scanf("%d%d%d",&A,&B,&H);
scanf("%d%d%d",&a,&b,&h);
if(a<=A&&b<=B){
if(H>=h){
s=(double)(A*B*H+a*b*h)/(A*B);
}
else{
s=(double)(A*B*H)/(A*B-a*b);
if(s>=h){
s=(double)(A*B*H+a*b*h)/(A*B);
}
}
printf("%.2f\n",s);
}
}
return 0;
}