马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
大象喝水
标题描述
一只大象口渴了,要喝 20 升水才能解渴,但现在只有一个深 h 厘米,底面半径为 r 厘米的小圆桶 (h 和 r 都是整数)。问大象至少要喝多少桶水才会解渴。
这里我们近似地取圆周率 π = 3
.14 \pi=3
.14 π=3
.14 。
输入格式
输入有一行:包行两个整数,以一个空格分开,分别表示小圆桶的深 h 和底面半径 r,单位都是厘米。
输出格式
输出一行,包罗一个整数,表示大象至少要喝水的桶数。
输入输出样例 #1
[size=3
]输入 #1
[size=3
]输出 #1
阐明/提示
数据规模与约定
对于全部的测试点,包管KaTeX parse error: Expected 
9;EOF
9;, got 
9;&
9; at position 2: 1&̲le;h≤500 ,KaTeX parse error: Expected 
9;EOF
9;, got 
9;&
9; at position 2: 1&̲le;r≤100。
C+
;+
;
1 d m 3
= 1 L 1dm^3
=1L 1dm3
=1L 以是将“升”转化为“立方厘米”公式为:
1000 c m 3
= 1 L 1000cm^3
=1L 1000cm3
=1L
可知题中大象要喝 20000 c m 3
20000cm^3
20000cm3
的水才解渴。
又知圆柱体体积公式:
V = π ⋅ r 2 ⋅ h V=\pi\cdot r^2\cdot h V=π⋅r2⋅h
现已知 h,r 以及总喝水数,求大象喝水数。
易错点:末了要对喝水的桶数取整!(因为 a 大部分不为整数,要向上取整大象才能喝饱)
上代码:
- #include<bits/stdc+
- ;+
- ;.h>using namespace std;int h,r,a;int main(){ cin>>h>>r; a=20000/(3
- .14*r*r*h)+
- ;1; cout<<a; return 0;}
复制代码 Python
本题需要不少于喝水总量,因此需要向上取整 ceil() 函数,在 Python 中需要导入 math 库。
假如你只需要 math 库中的某一函数,你可以使用 from math import x 来导入;假如你需要导入 math 库中的全部函数,你可以使用 import math。
本标题代码如下:
- from math import ceila,b=input().split();a=int(a);b=int(b);print(ceil(20000/(3
- .14*a*b*b)));
复制代码 Java
借助 Scanner 类读取输入的小圆桶的深和底面半径,然后计算小圆桶的容积。因为标题里大象要喝的水的总量单位是升,以是要将其转换为立方厘米。末了使用 Math.ceil() 方法对计算得到的桶数向上取整,而且输出结果。
- import java.util.Scanner;publicclass Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // 读取输入的小圆桶的深和底面半径 int h = scanner.nextInt(); int r = scanner.nextInt(); // 定义圆周率 double pi = 3
- .14; // 计算小圆桶的容积,单位为立方厘米 double volume = pi * r * r * h; // 大象需要喝的水的总量,单位转换为立方厘米 double totalWater = 20 * 1000; // 计算需要的桶数 int buckets = (int) Math.ceil(totalWater / volume); // 输出结果 System.out.println(buckets); scanner.close(); }}
复制代码 空想可以大,第一步总是小的!
.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |