找回密码
 register

QQ登录

只需一步,快速开始

搜索
查看: 11|回复: 0

[C语言] #102. 注水问题

[复制链接]
  • 打卡等级:热心大叔
  • 打卡总天数:324
  • 打卡月天数:17
  • 打卡总奖励:322
  • 最近打卡:2025-10-23 09:15:52
Waylee 发表于 2025-10-23 15:30 | 显示全部楼层 |阅读模式 | Google Chrome | Windows 10

马上注册,查看网站隐藏内容!!

您需要 登录 才可以下载或查看,没有账号?register

×

题目描述

已知注水管 A 单独注满一池水需要 a 小时,注水管 B 单独注满一池水需要 b 小时,排水管 C 将一池水排净需要 c 小时。初始时水池中没有水,同时打开注水管 A 和 B。t 小时后,再打开排水管 C,问水池注满一共需要多少小时?

保证打开水管 C 时水池还没有满,且保证水池最终可以注满。

输入

输入四个整数 a,b,c,t (1≤a,b,c,t≤50)

输出

​输出一个浮点数,表示水池注满一共需要多少小时(包括一开始的 t 小时)。

​结果保留两位小数。

样例输入

20 16 10 5

样例输出

40.00

答题:


下面给出通用解法(把池子容量归一为 1):


A、B 同时注水的速率:
$$
(r_1=\frac1a+\frac1b)
$$
打开 C 之后的净速率:
$$
(r_2=r_1-\frac1c)
$$

前 (t) 小时注入体积:
$$
(V_1=r_1 t)
$$

剩余体积:
$$
(1-V_1=1-r_1 t)
$$

之后以净速率 (r2)  注满所需时间:

$$
x=\frac{1-r_1 t}{r_2}
$$

总用时:
$$
\boxed{T=t+\frac{1-\left(\frac1a+\frac1b\right)t}{\left(\frac1a+\frac1b-\frac1c\right)}}
$$
等价写法:
$$
T=t+\frac{1-\left(\frac{t}{a}+\frac{t}{b}\right)}{\left(\frac1a+\frac1b-\frac1c\right)}
$$


直接把 (a,b,c,t) 代入上式即可。
您需要登录后才可以回帖 登录 | register

本版积分规则

雪舞知识库 ( 浙ICP备15015590号-1 | 萌ICP备20232229号|浙公网安备33048102000118号 ) |网站地图|天天打卡

GMT+8, 2025-10-24 07:10 , Processed in 0.086470 second(s), 5 queries , Redis On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表