java吧 关注:1,218,179贴子:12,667,878
  • 1回复贴,共1
求助

java这题怎么写啊,求教

只看楼主收藏回复

某村庄有一口公共水井,为了保护该水井及饮用水的质量,当地规定当该水井内的水量不高于100时,禁止取水6小时整(假设1:0:0开始禁止取水,则7:0:0可解禁),在此期间,公共水井水量自动恢复到最大容量1000;如果预计村民当次取水后水量低于100,则拒绝该村民本次取水。
其实每个村民自家也有口水井,自家的水井容量各不相同,范围在(100,200]内。村民优先去公共水井取水,若发现公共水井禁止取水或因容量不够拒绝取水时,再从自家水井取水。
自家水井容量不高于100时,禁止取水1小时整,在此期间,水井水量自动恢复到初始水量;如果预计村民当次取水后水量低于100,则允许该村民本次从自家水井取水至水井容量到100。
请模拟n次村民的用水情况:先设置公共水井水量及每位村民自家水井容量,再模拟村民取水的情形。村民每次取水时需输入年、月、日、时、分、秒和取水量,若成功从公共水井取水则输出“public:m”形式,m表示公共水井剩余水量;若成功从自家水井取水则输出“private:n”形式,n表示自家水井剩余水量;若没有取到水,则输出“wait”。
输入
公共水井初始水量(100<publicWell<=1000);m及m位村民自家水井水量(100<privateWell<=200,也是初始水量,村名编号从1开始,按1递增);n及n次村民的取水需求,每次取水格式:村民编号 年 月 日 时 分 秒 实际取水量(>0)。(不用检查输入数据格式的规范性,后一次取水时间晚于前一次取水时间,年份大于1970)
输出
每次取水的情况,显示方式(村民编号:水井类型,成功取水量,本次取水后水井的剩余水量)
样例输入 Copy
1000
3 150 200 110
4
1 2022 3 1 18 25 30 800
2 2022 3 1 20 25 20 150
1 2022 3 1 23 25 19 100
3 2022 3 2 6 25 25 150
样例输出 Copy
1:public,800,200
2:private,100,100
1:public,100,100
3:public,150,850
提示
(1)定义一个类DateTime,处理日期、时间的间隔,或者利用Calender类处理日期的间隔;
(2)将公共水井取水分成两类:取水成功、取水失败;将私人水井分成三种情况:取全部水、取部分水、取水失败;
(3)将小时转换成秒进行比较。


IP属地:安徽来自Android客户端1楼2023-03-18 13:37回复
    用Switch循环设置条件慢慢改就是了


    IP属地:江西来自Android客户端2楼2023-03-23 08:46
    回复