usingnamespacestd;doublelen,h1,h2,h3,h4;doublesb_cal(doubleh_counter,doubleh_adj1,doubleh_adj2){doublehx,rebuild_V,l1,l2,rm_part_V,final_V;if(h_counter

欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Timus 1836

系統 1814 0
      
        #include 
      
      
        <
      
      
        iostream
      
      
        >
      
      
        
using namespace std;

double len,h1,h2,h3,h4;

double sb_cal( double h_counter, double h_adj1, double h_adj2) {
double hx, rebuild_V, l1, l2, rm_part_V, final_V;
if ( h_counter < h_adj1 + h_adj2 )
return - 1 ;

hx
= h_counter - (h_adj1 + h_adj2);
if ( hx < 0 ) // 有一個點為0,但其實其他三點確定了該點應該是大于0,就會出現計算到hx是負數
return - 1 ;

l1
= (len * hx) / ( hx + h_adj1 );
l2
= (len * hx) / ( hx + h_adj2 );

rebuild_V
= ((h_adj1 + hx + h_counter + hx + h_adj2 + hx) / 4 ) * len * len; // 把整個有水的部分抬高hx
rm_part_V = (l1 * l2 * hx) / 6 ; // 多減的部分
final_V = rebuild_V - (len * len * hx) + rm_part_V;
return final_V;
}

int cal( double * v) {
double side1,side2,ret;
if ( h1 == 0 && h2 == 0 && h3 == 0 && h4 == 0 || len == 0 ) {
* v = 0 ;
return 1 ;
}

if ( h1 == 0 && h2 == 0 || h2 == 0 && h3 == 0 || h3 == 0 && h4 == 0 || h4 == 0 && h1 == 0 )
return 3 ;

ret
= - 1 ;
if ( h1 == 0 )
ret
= sb_cal(h3, h2, h4);
else if ( h3 == 0 )
ret
= sb_cal(h1, h2, h4);
else if ( h2 == 0 )
ret
= sb_cal(h4, h1, h3) ;
else if ( h4 == 0 )
ret
= sb_cal(h2, h1, h3);
else if ( h1 - h2 == h4 - h3 && h1 - h4 == h2 - h3 ) // no zero 剛開始我使用長度來比較,結果wa3,因為 5, 4, 5, 4 這樣的數據可以通過長度比較,但其實是不符合事實的
ret = (h1 + h2 + h3 + h4) / 4 * len * len;

if ( ret < 0 )
return 2 ;
else {
* v = ret;
return 1 ;
}
}
int main() {
int t,ret;
double v;
cin
>> t;
for ( int i = 0 ;i < t;i ++ ) {
scanf(
" %lf %lf %lf %lf %lf " , & len, & h1, & h2, & h3, & h4);
ret
= cal( & v);
if ( 1 == ret )
printf(
" %.6f\n " , v);
else if ( 2 == ret )
printf(
" error\n " );
else
printf(
" ambiguous\n " );
}
return 0 ;
}

純數學題,有幾個要點:

1)四個水位點在同一個平面的情況下,其容積計算公式是四個水位高度的平均值乘以底面積

2)當有一個水位點為0,其他都不為0的時候,那么為0的水位點還是可以由其他三個水位點計算出來(一個沉下去的點,前提是其他三個點的數據符合事實)

3)如果四個水位在同一平面中的話,那么總會形成一個平行四邊形。

Timus 1836


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 在线观看免费黄色小视频 | 一区二区三区国产 | 免费又色又爽1000禁片 | 国产精品一区二区在线 | 国产欧美精品一区二区三区 | 激情福利视频 | 农村寡妇偷人高潮A片小说 午夜爱爱爱爱爽爽爽网站免费 | 国产不卡在线观看视频 | 那里有毛片看 | 国产精品岛国久久久久久久 | 台湾一级毛片永久免费 | 一个色综合亚洲伊人久久 | 第一次破處在线国语视频播放 | 亚洲一区二区三 | 亚洲偷图色综合色就色 | 天天色天天射天天操 | 日本高清在线观看视频www | 日韩成人在线视频 | 色在线免费| 日韩欧美一区二区三区不卡在线 | 青青草原伊人 | 欧美成人18性 | 国产a做爰全过程片 | 亚洲午夜精品视频 | 一级毛片ab片高清毛片 | 日本国产欧美 | 青青99| 九九热视频这里只有精品 | 欧美成人四级hd版 | 91精品国产综合久久久久久丝袜 | 黄页网站免费高清在线观看 | 一级做a爰片欧美一区 | 亚洲精品久久久久久中文字幕小说 | 成人二区三区 | 国产麻豆一区二区三区 | 亚洲欧美日韩中文字幕久久 | 国产在线观看一区二区三区 | 久久草网站| 黄色aaa视频| 亚洲第一精品福利 | 亚洲精品在线播放 |