水题(各种意义上的)
题目描述
一只大象口渴了,要喝 $20$ 升水才能解渴,但现在只有一个深 $h$ 厘米,底面半径为 $r$ 厘米的小圆桶 ($h$ 和 $r$ 都是整数)。问大象至少要喝多少桶水才会解渴。
输入格式
输入有一行:包行两个整数,以一个空格分开,分别表示小圆桶的深 $h$ 和底面半径 $r$,单位都是厘米。
输出格式
输出一行,包含一个整数,表示大象至少要喝水的桶数。
样例 #1
样例输入 #1
23 11
样例输出 #1
3
提示
数据规模与约定
对于全部的测试点,保证 $1 \leq h \leq 500$,$1 \leq r \leq 100$。
代码
// Problem: B2029 大象喝水
// Contest: Luogu
// URL: https://www.luogu.com.cn/problem/B2029
// Memory Limit: 128 MB
// Time Limit: 1000 ms
//
// Powered by CP Editor (https://cpeditor.org)
// https://www.luogu.com.cn/record/88862938
#include<iostream>
#include<cmath>
using namespace std;
int main(){
const double PI=3.1415926;
const int water=20000; //升与立方厘米(ml)的进率是 1000。
//这个知识点现在居然要靠查才能想起来了,智商很捉急啊
int h,r;
scanf("%d%d",&h,&r);
cout<<ceil(water/(r*r*PI*h))<<endl; //ceil: 定义于cmath/math.h,返回大于或者等于指定表达式的最小整数。
//和数学定义上的[x]差不多
return 0;
}