总时间限制: 1000ms 内存限制: 65536kB
描述
一只大象口渴了,要喝 20 升水才能解渴,但现在只有一个深 h 厘米,底面半径为 r 厘米的小圆桶 (h 和 r 都是整数)。问大象至少要喝多少桶水才会解渴。
输入
输入有一行:包行两个整数,以一个空格分开,分别表示小圆桶的深 h 和底面半径 r,单位都是厘米。
输出
输出一行,包含一个整数,表示大象至少要喝水的桶数。
样例输入
23 11
样例输出
3
提示
- 如果一个圆桶的深为 h 厘米,底面半径为 r 厘米,那么它最多能装 Pi * r * r * h 立方厘米的水。(设 Pi=3.14159)
- 1 升 = 1000 毫升
- 1 毫升 = 1 立方厘米
思路
方法一
先计算出一个圆桶的体积,然后用 20000 除以这个体积,如果除不尽则加 1。
Code
C
1 2 3 4 5 6 7 8 9
| #include <stdio.h> #define PI 3.14159 #define V(h,r) (r)*(r)*(h)*(PI) int main() { int h,r; scanf("%d %d", &h, &r); int a = 20000 / (V(h,r)); printf("%d", a+1); }
|
C++
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| #include <iostream> #include <bits/stdc++.h> #define Pi 3.14159 #define V 20*1000 using namespace std; int main() { int h, r, res; double V_bottle; cin >> h >> r; V_bottle = h*r*r*Pi; res = V / V_bottle; if(V % (int)V_bottle != 0) res += 1; cout << res; }
|
来源
计算概论化学学院期末考试