c++写代码:一个城市中有若干汽车售票员,政府规定售票员的总数不能超过城市总人口的Q,也不能不低于城市总人口的P。现给出P和Q,求最少可能的城市人口数。其中,P,Q(0<P,Q<100)是一个两位小数。 输入数据 第一行为一个实数PP。 第二行为一个实数Q。 P和Q均为两位小数。 输出数据 仅一行,一个整数,表示最少可能的城市人口数。 输入样例 13.00 14.00 输出样例 15
时间: 2023-05-19 14:01:37 浏览: 76
这是一道简单的数学问题,可以使用向上取整函数 ceil() 来解决。假设城市人口数为 N,则售票员总数为 ceil(N*Q),根据题目要求,售票员总数不能超过城市总人口的 Q,即 ceil(N*Q) <= N*Q,同时售票员总数不能低于城市总人口的 P,即 ceil(N*Q) >= N*P。将这两个不等式联立起来,得到 P <= ceil(N*Q)/N <= Q,即 P*N <= ceil(N*Q) <= Q*N。因为 ceil(N*Q) 是一个整数,所以最少可能的城市人口数为 ceil(Q/P)。
因此,C 代码如下:
#include <stdio.h>
#include <math.h>
int main() {
double P, Q;
scanf("%lf %lf", &P, &Q);
int N = ceil(Q/P);
printf("%d\n", N);
return 0;
}
阅读全文