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,运行时间很容易超限,这是本题所设的一个逻辑陷阱)

++运行效果展示:++

++++

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

相关推荐
视觉小萌新3 分钟前
VScode+opencv——关于opencv多张图片拼接成一张图片的算法
vscode·opencv·算法
小han的日常9 分钟前
pycharm分支提交操作
python·pycharm
2的n次方_14 分钟前
二维费用背包问题
java·算法·动态规划
明月清风徐徐27 分钟前
Scrapy爬取豆瓣电影Top250排行榜
python·selenium·scrapy
theLuckyLong28 分钟前
SpringBoot后端解决跨域问题
spring boot·后端·python
Yongqiang Cheng31 分钟前
Python operator.itemgetter(item) and operator.itemgetter(*items)
python·operator·itemgetter
MavenTalk34 分钟前
Move开发语言在区块链的开发与应用
开发语言·python·rust·区块链·solidity·move
simple_ssn42 分钟前
【C语言刷力扣】1502.判断能否形成等差数列
c语言·算法·leetcode
FksLiao1 小时前
Superset安装
python
寂静山林1 小时前
UVa 11855 Buzzwords
算法