python-长方体边长和(赛氪OJ)

[题目描述]
给出共享长方体一个顶点的三个面的面积,求它十二条边的边长和。
输入格式:
一行三个整数 a , b , c 表示面积。
输出格式:
一行一个整数表示边长和。
样例输入#1
1 1 1
样例输出#1
12
样例输入#2
4 6 6
样例输出#2
28
数据范围:
对于 100% 的数据,1≤a,b,c≤10000。
来源/分类(难度系数:一星)


完整代码展示:
a,b,c=map(int,input().split())
x=pow(a*b/c,0.5)
y=pow(a*c/b,0.5)
z=pow(b*c/a,0.5)
print(int(4*(x+y+z)))


代码解释:
a,b,c=map(int,input().split()) ”,让用户分别输入长方体共顶点三个面的面积a,b,c。
x=pow(a*b/c,0.5)
 y=pow(a*c/b,0.5)
 z=pow(b*c/a,0.5) 
”,令x,y,z分别为长方体共顶点三个面中的共顶点三条边并分别求出其值。
print(int(4*(x+y+z))) ”,打印4倍x+y+z的总和(长方体由4条长,宽,高边组成)。
本题解题思路及核心:1,解题思路:已知x*y==a,x*z==b,y*z==c,则y/z==a/b,又y*z==c,联立y/z==a/b,y*z==c,得y==z*a/b,y==c/z,即z*a/b==c/z,容易得到:z**2==b*c/a,z==pow(b*c/a,0.5)。x,y同理。2,解题核心:面积与边长关系,本题不适合用穷举法计算,特别是Python,运行时间很容易超限,这是本题所设的一个逻辑陷阱)


运行效果展示:

f6087cabee5f4a4fb46bfb8d0b36da29.jpg

da682881949543688014659e8a354c41.jpg 

             (声明:以上内容均为原创) 

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

闪云-微星

感谢大家的支持与鼓励

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值