首页 > 其他分享 >P7177 [COCI2014-2015#4] MRAVI 题解

P7177 [COCI2014-2015#4] MRAVI 题解

时间:2024-04-18 17:36:41浏览次数:23  
标签:二分 int 题解 代码 DFS MRAVI ed res 2015

思路。

我们知道最初添加的液体越多,那么每个蚂蚁得到的液体也就越多,又因为标签里有深搜,所以可以用 DFS+二分解决(感觉说了一通废话),算是比较常规的一种解法了。

在此题中我们需要魔改一下建树,需在其中添加判断此边是否为超级管道和处理通过液体的百分比这两段代码。

DFS 和二分的代码是最重要的,但也是最简单的。

温馨提示:此题的码量有点逆天,根本不像正常的 DFS + 二分的题的码量,所以就不放完整代码了,也请各位注意。

其他就没什么了。

核心 DFS + 二分代码。

void dfs(int x,int f) {
	for(int i=tou[x]; i; i=ed[i].nxt) {
		int y=ed[i].to;
		double res=0;
		if(y==f){
			continue;	
		}
		res=ll[x]*ed[i].w;
		if(ed[i].opt){
			res*=res;
		}
		ll[y]+=res;
		dfs(y,x);
	}
}
bool zhao(double mid) {
	for(int i=1; i<=n;i++){
		ll[i]=0;
	}
	ll[1]=mid;
	dfs(1,0);
	for(int i=1; i<=n;i++){
		if(ll[i]<k[i]){
			return 0;
		}
	}
	return 1;
}

标签:二分,int,题解,代码,DFS,MRAVI,ed,res,2015
From: https://www.cnblogs.com/IOI-officialaccount/p/18144022

相关文章

  • Multiplicity 题解
    \(\texttt{ProblemLink}\)简要题意给定一个序列\(a\),求\(\sum\limits_{i=1}^ncnt_i\)。\(cnt_i\)表示在\(a\)中选择长度为\(i\)的非空子序列\(b\)使得\(\forallj\in[1,i],j|b_j\)的数量。思路计数题,考虑dp。设\(f_{i,j}\)表示前\(i\)个数,选......
  • [题解][洛谷P1174] 打砖块
    题目分析n行m列的砖块,起始有k发子弹。每次可以用一发子弹,打碎某一列当前处于这一列最下面的那块砖,并且得到相应的得分。某些砖块打碎以后会获得一个砖块。求最大得分。题解可以看出是一道动态规划题。关键在于如何设计状态。先考虑砖块打碎不会得到子弹的情况:这个时候可以......
  • [题解] [NOIP 1999] 导弹拦截
    [NOIP1999]导弹拦截题目描述有若干枚导弹,每一枚导弹的高度是\(h_i\),导弹拦截系统每次拦截导弹都不能比上一次拦截的高度更高,导弹拦截没有冷却时间且第一次拦截的高度任意。问题1:一套系统最多能拦截多少导弹?问题2:拦截所有导弹最少需要多少个拦截系统?输入格式一行,若干个......
  • LibreOJ-3038 「JOISC 2019 Day3」穿越时空 Bitaro <线段树> 题解
    审题一条链每条边有通行时间上下界限制通过一条边需要\(1\)单位时间站在当前节点时间减少\(1\)耗费\(1\)单位代价\(q\)次询问要么更改一条边的通信时间上下界要么询问在\(b\)时刻在城市\(a\),\(d\)时刻到达城市\(c\)的最小代价思想做题准备......
  • 前端面试题解析与总结
    在2024年的前端行业,面试是进入理想公司的一道门槛。不同公司的面试流程和考察点各有不同,下面将结合三家知名公司的面试题目进行分析和总结,为广大前端开发者提供一份参考指南。一、某对外电商一面:笔试题:弹窗组件防抖截流代码实现关系型数组转换成树形结构对象数组全排列......
  • at_cf17final_j Tree MST 题解
    题目链接点击打开链接题目解法还是挺有收获的题解法1完全图求\(mst\),首先应该考虑\(boruvka\)算法现在的问题转化成了求\(O(\logn)\)次每个点\(x\)到不在\(x\)的连通块中的点的最短边这个可以换根\(dp\)求子树内的是好求的,只要记录所有连通块的最小值和次小值......
  • mongodb启动失败问题解决
    解决办法sudochown-Rmongod:mongod/var/lib/mongochown-Rmongod:mongod/var/log/mongodb/chown-Rmongod:mongod/tmp/mongodb-27017.sock或者可以使用mongod--config/etc/mongod.conf参考:MongoDBloadsbutbreaks,returningstatus=14-AskUbuntumon......
  • AT_abc211_d [ABC211D] Number of Shortest paths 题解
    题目简述给定一张$n$个点$m$条边的无向无权图,问从$1$到$n$的最短路有多少条。题目分析设$cnt_i$表示从$1$到$i$的最短路条数,$dis_i$表示最短路。这道题可以考虑使用BFS做,对于一个点$v$,设第一次更新它的点为$u$,则它的转移应为$cnt_v\leftarrowcnt_u$并......
  • CF81C Average Score 题解
    题目简述给定一个长度为$n$的序列,在其中取出$x$个数,构成一个数列$a$,剩下的$y$个数构成数列$b$。若第$i$个数在数列$a$中,$ans_i$等于$1$,否则等于$2$,请你给出一种方案使得两数列的平均数之和最大且$ans$的字典序最小.题目分析我们先考虑$x=y$的情况,在这种情......
  • ICPC2023杭州站题解(B D E F G H J M)
    本场金牌数量较其他场多(45枚),但金牌线题数不多。五题为分水岭,五道简单题过后所有题均为金牌题,其中有四道可做,即ABEF,做出任意一道即可拿金牌。这里提供除A题以外的所有可做题的题解。ICPC2023杭州站:M:加入比当前选择的所有数大的数一定会让平均值上升,因此答案数列中,V图中的......