XJOI练习2神奇的供水系统
神奇的供水系统
在游遍神秘岛过程中,Z4发现每一个小岛上都有若干个奇怪的类似小水缸似的立方体,这另到Z4相当迷惑不解!这天晚上,忽然下起了一场大雨,在中心岛小树屋上类似那个圆形石槽中间的小孔中涌出了一泓清水,z4不禁一阵欢呼也不自觉的联想起那些类似小水缸的东西。
经过一连数日的观察,发现那些形似小水缸是用来收集雨水的集水器,连同有很多埋在地底下的贮水器形成一个庞大的供水系统。而且特别的是这个供水网络不存在循环连接,也就是贮水系统的连接不存在环。
供水系统是用粗幼不同的水管连接,所有水管都是单向传输的。所有的集水器都有且仅有一条指向某个贮水器的输出水管。所有的贮水器都连有若干条或自某集水器连至或自其他贮水器连至的输入水管,也有且仅有一条连向其他贮水器的输出水管。在小树屋地底下有一个中央贮水器,类似于其他贮水器,所有收集到的雨水将最终汇集到这里,它的输出水管直接供应上树屋。
这套供水系统是这样工作的:下雨过后,每个集水器都收集到一定体积的水,并通过水管,贮水器向中央贮水器汇集。而当任意一个贮水器所有输入水管都输送完毕,他的输出水管才会开启,把当中所有的水输送出去。直到中央贮水器的出水水管开启时,树屋上的Z4(可怜的Z4!)才得到水供应。
由于严密的设计,所有贮水器的容量都是足够的大!
由于水管粗幼不同,所以每道水管运水的速度各不相同。
现在问题是,当雨停后过多久,中央贮水器才会向树屋上供水?智慧过人的Z4当然不会给自己计算找麻烦,所有数据中的时间单位统一为s,体积单位统一为L。
输入格式:
输入文件water.in的第一行包括四个整数n,m,s_rain,t_rain(1<=n<=1000,1<=m<=1000000)分别表示n个贮水器,m个集水器,了方便计算,Z4人为地把他们分别按1..n,1..m标号,而其中第n个贮水器即为中央贮水器,s_rain表示单位时间里单位面积的降雨量,t_rain表示该次降雨持续时间。
接下来的m行分别描述第1至第m个集水器。每行含有四个整数S,h,k,t。S表示该集水器容器底面积,h表示容器的高(S*h<=20000),k表示该集水器输出水管指向第k个贮水器,t表示输出水管输送一单位的水所用的时间。
再接下来n-1行分别描述第1至第n-1个贮水器。每行包括两个整数k,t。k表示该贮水器输出水管指向第k个贮水器,t表示该贮水器的输出水管输送一单位的水所用的时间。
输出格式:
输出文件water.out只有一行,表示雨停后直到得到水供应的时间.(结果肯定<=maxlongint)
样例输入:
5 5 1 1 10 1 1 2 5 1 3 4 10 1 4 3 10 1 4 6 8 1 5 9 2 2 5 1 5 2 5 2
样例输出:
100
这道题看似很麻烦实际很水,所有的集水器与储水器都只在灌满水后才会输向下一个储水器,这又是一棵树,深搜即可。
#include<cstdio> #include<iostream> using namespace std; ],Vo[],Sp[],tree[][],size[]; inline void dfs(int x) { ;i<=size[x];i++) { dfs(tree[x][i]); Ti[x]=max(Ti[x],Ti[tree[x][i]]+Vo[tree[x][i]]*Sp[tree[x][i]]); Vo[x]+=Vo[tree[x][i]]; } } int main() { int n,m,s,t,s1,h1,k,sp1,vo1; scanf("%d%d%d%d",&n,&m,&s,&t); s*=t; ;i<=m;i++) { scanf("%d%d%d%d",&s1,&h1,&k,&sp1); vo1=min(s1*h1,s*s1); Vo[k]+=vo1; Ti[k]=max(Ti[k],vo1*sp1); } ;i<n;i++) { scanf("%d%d",&k,&Sp[i]); tree[k][++size[k]]=i; } dfs(n); printf("%d",Ti[n]); ; }
XJOI练习2神奇的供水系统的更多相关文章
- BA-给排水-供水系统自动控制(转载)
浙江省建筑设计研究院划 杨绍胤 杨庆 摘 要:探讨供水系统变流量和恒压自动控制和设计方法.关键词: 供水系统 自动控制 传统给水系统常在屋顶设置高位水箱.水从地下水箱用水泵打到高位水箱.从高位水箱通过 ...
- 神奇的Bank系统之旅哦
奋斗不能等待,我们不能等到垂暮之年再去“全力以赴”.让我们从现在开始,为理想而努力,为人生而拼搏.精诚所至,金石为开,相信奋斗会让我们的青春之花绽放得更加绚烂,让我们的人生之路走下来不留遗憾. ...
- OpenWrt——神奇的路由系统
鉴于最近大家对这个系统比较感兴趣而且疑问很多所以本渣就整理下我对这个系统的理解和最实用的802.1x认证的理解.还望大家多多互相交流. 如果您时间紧张直接看最后的步骤,时间充裕的请仔细阅读,理解. O ...
- linux 系统函数 basename和dirname
在linux系统中有这样两个系统函数,basename 和 dirname 1.basename 用于 获取文件名, 1.1 当给定扩展名作为参数之后,甚至可以直接获取文件名 2.与basename ...
- 什么是英特尔® Edison 模块?
英特尔® Edison 模块 是一种 SD 卡大小的微型计算芯片,专为构建物联网 (IoT) 和可穿戴计算产品而设计. Edison 模块内含一个高速的双核处理单元.集成 Wi-Fi*.蓝牙* 低能耗 ...
- 谁让APP工程师产生了泡沫?
这两年移动互联网比较火,移动APP的开发人员也是比较紧缺. 面试了一个做APP的,能力很一般,态度也比较傲慢.最后感觉肯定不会用这个人了,但是出于验证自己想法的目的,还是很诚恳地以一个决定录取他的态度 ...
- [题解]noip2016普及组题解和心得
[前言] 感觉稍微有些滑稽吧,毕竟每次练的题都是提高组难度的,结果最后的主要任务是普及组抱一个一等奖回来.至于我的分数嘛..还是在你看完题解后写在[后记]里面.废话不多说,开始题解. 第一题可以说的内 ...
- 项目经验之:GIS的初步工作窗体的搭建
不多说了,上图,初步工作刚好完 GIS平台系统,实现整个供水系统的协调与统一.系统以管网为基础依据,建立可实现供水管网规划设计.输配管理.图档管理.抢修辅助决策及综合查询.统计等功能. 整体窗口设计 ...
- ZeroMQ:云计算时代最好的通讯库
还在学socket编程吗?还在研究为什么epoll比select更好吗? 噢,不必了! 在复杂的云计算环境中,我们面临的难题远比这个复杂得多. 庞大的服务器集群作为计算云,对来来看或许只是一个简单的搜 ...
随机推荐
- jenkins coding.net webhook plugin
开源地址: https://github.com/yuzd/coding.net =========================================================== ...
- 继BAT之后 第四大巨头是谁
中国互联网三大巨头的位置,毫无疑问是属于百度腾讯阿里的,但在它们之后,哪家公司能进巨头之列?京东布局不错,走亚马逊路线:360同时占据传统和移动互联网两大领域入口:小米软硬整合,生态系统完整. 很多人 ...
- BZOJ 1096: [ZJOI2007]仓库建设(动态规划+斜率优化)
第一次写斜率优化,发现其实也没啥难的,没打过就随便找了一份代码借(chao)鉴(xi)下,不要介意= = 题解实在是懒得写了,贴代码吧= = CODE: #include<cstdio># ...
- R系列:分词、去停用词、画词云(词云形状可自定义)
附注:不要问我为什么写这么快,是16年写的. R的优点:免费.界面友好(个人认为没有matlab友好,matlab在我心中就是统计软件中极简主义的代表).小(压缩包就几十M,MATLAB.R2009b ...
- Pin学习笔记--安装及一些基本知识
具体请见用户手册Pin 3.2 User Guide https://software.intel.com/sites/landingpage/pintool/docs/81205/Pin/html/ ...
- Handlebars模板引擎之上手
handlebars Handlebars,一个JavaScript模板引擎,是基于Mustache的扩展.模板引擎的都存在一个上下文环境,这是它的作用区间. 需求:基本使用 需要的库 <scr ...
- 旺财速啃H5框架之Bootstrap(六)
年后太忙,一直没有更新 好,这篇结束,速啃嘛,就应该拿重点,实用点.继续之前的内容,接着来讲讲网页中常用的布局组件与插件,我喜欢用简单的直接的话或案例来说明,就是针对那些想快速能做出点东西的人而准备的 ...
- PHP 端口号 是否 被占用 以及 解决方法
开始---->运行---->cmd,或者是window+R组合键,调出命令窗口{PHP详尽配置环境:http://www.cnblogs.com/ordinaryk/p/6496398.h ...
- nodeJS中读写文件方法的区别
导言:nodejs中所有与文件相关的操作都在fs模块中,而读写操作又是我们会经常用到的操作,nodejs的fs模块针对读操作为我们提供了readFile,read, createReadStream三 ...
- webpack 引用 jquery + bootstrap 报错解决
webpack 引用 jquery + bootstrap , error : jQuery is not defind 在webpack.dev.conf.js plugins[] 加入 new w ...