flow

Pass React Ref from parent to child in order to get DOM element

有些话、适合烂在心里 提交于 2020-01-23 07:20:51
问题 I have a parent and a child component. I need to access the parent's HTMLelement in the child component. I have a working but unclean solution involving this.setState({ domNode: ReactDOM.findDOMNode(this) }); in the parent's componentDidMount which is just wrong on many levels. How can i do this using createRef() in the parent to pass its ref as a prop to the child and then how do i get the DOM node with type HTMLElement from the ref? 回答1: The best solution that doesn't involve any hack would

网络流

早过忘川 提交于 2020-01-22 21:05:39
一个网络 \(G=(V,E)\) 是一张有向图,图中每条有向边 \((x,y)\in E\) 都有一个给定的权值 \(c(x,y)\) ,称为边的容量。特别地,若 \((x,y) \notin E\) ,则 \(c(x,y)=0\) 。图中还有两个指定的特殊节点 \(S,T \in V(S \neq T)\) 分别被称为源点和汇点。 设 \(f(x,y)\) 是定义在节点二元组 \((x \in V,y \in V)\) 上的实数函数,且满足: 容量限制: \(f(x,y) \leq c(x,y)\) 斜对称: \(f(x,y)=-f(y,x)\) 流量守恒: \(\forall x \neq S,\ x \neq T,\ \sum_{(u,x)\ \in E} f(u,x) = \sum_{(x,v)\ \in E}f(x,v)\) \(f\) 称为网络的流函数,对于 \((x,y) \in E\) , \(f(x,y)\) 称为边的流量, \(c(x,y)-f(x,y)\) 称为边的剩余流量 \(\sum_{(S,v)\ \in E} f(S,v)\) 称为整个网络的流量( \(S\) 为源点) 最大流 Edmond—Karp算法 若一条从源点 \(S\) 到汇点 \(T\) 的路径上各条边的剩余容量都大于 \(0\) ,则称这条路径为一条增广路 \(EK\) 算法为用 \

最大流最小割

一世执手 提交于 2020-01-22 12:24:43
ZOJ Problem Set - 3792 Romantic Value http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5300 模板题,有两种统计边数的办法,一种是扩大边权flow*=mod,然后加flow+=1,最后的最小割就是flow/mod,最小割边数是flow%mod。 dinic 1 #include<cstdio> 2 #include<cstring> 3 #include<iostream> 4 #include<algorithm> 5 #include<queue> 6 #define mt(a,b) memset(a,b,sizeof(a)) 7 using namespace std; 8 const int inf=0x3f3f3f3f; 9 class Dinic { ///最大流(MV^2*ME) 10 typedef int typef;///流量的类型 11 static const int ME=4010;///边的个数 12 static const int MV=64;///点的个数 13 int temp[MV],cur[MV],level[MV],path[MV]; 14 bool used[MV]; 15 queue<int> q; 16 typef flow;

「网络流 24 题」魔术球

假如想象 提交于 2020-01-22 01:29:01
比较有意思的题 题意:给你n个柱子,问你可以在上面放多少个编号连续且每根柱子上相邻的编号为平方数的球 洗澡时候想的,根据平方数这个关系建边,然后枚举多少个柱子,然后再在图上跑最小路径覆盖,若路径条数大于柱子数,那么珠子数-1就是答案 我写的有点....t了,但不想改 #include<bits/stdc++.h> using namespace std; int n,tot=-1,h[3005],ans=0,hou[3005]; struct node{ int from,next,to,rest,full; int last; }e[1000005]; bool judge[60005]; void add(int x,int y,int z){ tot++; e[tot].next=h[x]; h[x]=tot; e[tot].from=x; e[tot].to=y; e[tot].rest=z; e[tot].full=z; } int dis[3005],g[3005],flow[3005]; bool vis[3005]; int bfs(int s,int t){ queue<int>q; dis[s]=0; q.push(s);vis[s]=true; while(!q.empty()){ int u=q.front();vis[u]=false;q.pop();

「网络流 24 题」试题库

╄→尐↘猪︶ㄣ 提交于 2020-01-22 01:26:51
#include<bits/stdc++.h> using namespace std; int k,n; int tot=-1,h[3005],ans=0,sum=0; struct node{ int from,next,to,rest,full; }e[100005]; void add(int x,int y,int z){ tot++; e[tot].next=h[x]; h[x]=tot; e[tot].from=x; e[tot].to=y; e[tot].rest=z; e[tot].full=z; } int dis[3005],g[3005],flow[3005]; bool vis[3005]; int bfs(int s,int t){ queue<int>q; dis[s]=0; q.push(s);vis[s]=true; while(!q.empty()){ int u=q.front();vis[u]=false;q.pop(); for(int i=h[u];i!=(-1);i=e[i].next){ if(dis[e[i].to]>dis[u]+1&&g[e[i].to]==(-1)&&e[i].rest>0){ g[e[i].to]=i; flow[e[i].to]=min(flow[u],e[i].rest); dis[e[i].to]

「网络流 24 题」方格取数

自闭症网瘾萝莉.ら 提交于 2020-01-22 01:25:39
嘛,你把图分类一下 分成横坐标+纵坐标为奇偶... 然后在图上跑一个二分图最大权匹配 然后就是max(ans, 全部的-ans) 我代码写得有点... 1 #include<bits/stdc++.h> 2 using namespace std; 3 4 int inf=9999999; 5 int m,n,h[30005],tot=(-1),ans=0,sum=0; 6 int tu[305][305]; 7 struct node{ 8 int from,to,next,rest; 9 }e[300005]; 10 11 int zb(int x,int y){ 12 return (x-1)*n+y; 13 } 14 15 void add(int x,int y,int z){ 16 tot++; 17 e[tot].next=h[x]; 18 h[x]=tot; 19 e[tot].from=x; 20 e[tot].to=y; 21 e[tot].rest=z; 22 } 23 24 int dis[3005],g[3005],flow[3005]; 25 bool vis[3005]; 26 27 int bfs(int s,int t){ 28 queue<int>q; 29 dis[s]=0; 30 q.push(s);vis[s]=true; 31 while

「网络流 24 题」圆桌聚餐

六月ゝ 毕业季﹏ 提交于 2020-01-22 01:19:38
网络流水题,详细看代码 1 #include<bits/stdc++.h> 2 using namespace std; 3 4 int n,m,tot=-1,h[3005],ans=0,sum=0; 5 struct node{ 6 int from,next,to,rest,full; 7 int last; 8 }e[100005]; 9 void add(int x,int y,int z){ 10 tot++; 11 e[tot].next=h[x]; 12 h[x]=tot; 13 e[tot].from=x; 14 e[tot].to=y; 15 e[tot].rest=z; 16 e[tot].full=z; 17 } 18 19 int dis[3005],g[3005],flow[3005]; 20 bool vis[3005]; 21 22 int bfs(int s,int t){ 23 queue<int>q; 24 dis[s]=0; 25 q.push(s);vis[s]=true; 26 while(!q.empty()){ 27 int u=q.front();vis[u]=false;q.pop(); 28 for(int i=h[u];i!=(-1);i=e[i].next){ 29 if(dis[e[i].to]>dis[u]+1&&g[e

「网络流 24 题」数字梯形

北城余情 提交于 2020-01-22 00:53:24
直接拆点做,但就是搞不懂为什么wa掉了第一小问.... 不管了 #include<bits/stdc++.h> using namespace std; long long tot=-1,sum=0,h[20005],flow[20005],g[20005],ans=0,dis[20005],ans2=0,inf=9999999; bool vis[20005]; struct node{ long long from,to,next,rest,cost; }e[10000005]; void add(long long x,long long y,long long z,long long hg){ tot++; e[tot].next=h[x]; h[x]=tot; e[tot].cost=hg; e[tot].from=x; e[tot].to=y; e[tot].rest=z; } int bfs(long long s,long long t){ queue<int>q; q.push(s);dis[s]=0;vis[s]=true; while(!q.empty()){ long long u=q.front();q.pop();//vis[u]=false; for(int i=h[u];i!=(-1);i=e[i].next){ if(e[i].rest>0&

mitmproxy接口测试关联

浪子不回头ぞ 提交于 2020-01-22 00:23:29
前边说了如何去抓取及过滤本地的接口,方便我们在接口测试中去运用,当然这个桩的目的当然不是在我们接口测试,而是在我们整个内部方便去运用,去mock数据,当我们目前在本地可以去抓包,比如在我们开发过程中,或者说我们脚本中run_case的时候就可以抓到其数据 这里更新下代码 from mitmproxy import http class GetData(object): def request(self,flow): request_data = flow.request self.request_url = request_data.url request_pr = request_data.query request_form = request_data.urlencoded_form # print('url------------------>',self.request_url) # print('pr--------------->',request_pr) # print('form---------------->',request_form) def response(self,flow): # if 'imooc' in self.request_url: response_data = flow.response response_header =

餐巾计划问题

懵懂的女人 提交于 2020-01-21 20:06:17
这个题非常的好,真的......我半颓半打,打了一下午最后还是去看了题解,,,, 这个题对限制条件的转换非常的好 先贴代码 1 #include<bits/stdc++.h> 2 using namespace std; 3 4 long long tot=-1,sum=0,h[10005],flow[10005],g[10005],ans=0,dis[10005],ans2=0,inf=999999; 5 bool vis[10005]; 6 struct node{ 7 long long from,to,next,rest,cost; 8 }e[10000005]; 9 10 void add(long long x,long long y,long long z,long long hg){ 11 tot++; 12 e[tot].next=h[x]; 13 h[x]=tot; 14 e[tot].cost=hg; 15 e[tot].from=x; 16 e[tot].to=y; 17 e[tot].rest=z; 18 } 19 20 int bfs(long long s,long long t){ 21 queue<int>q; 22 q.push(s);dis[s]=0;vis[s]=true; 23 while(!q.empty()){ 24 long long