练习使用markdown

一级标题

二级标题

三级标题

无序列表:
  • 1、xxx
  • 2、xxx
  • 3、xxx
有序列表:
  1. qwq
  2. qwq
  3. qwq

引用

插入链接:

af

插入图片:

练习使用markdown
貌似图片大了点……

加粗文字
斜体文字

一行代码:
int f

一坨代码:

#include <bits/stdc++.h>
#define int long long
const int maxn=2e5+10;
using namespace std;
int n,m,s,t,u,v,w,ans,cnt=1;
int dep[maxn],fir[maxn];
struct edge{int v,w,nt;}e[maxn*2];
queue <int> q;
void into(int u1,int v1,int w1) {e[++cnt].v=v1;e[cnt].w=w1;e[cnt].nt=fir[u1];fir[u1]=cnt;}
bool bfs() 
{
	memset(dep,0,sizeof(dep));
	q.push(s);dep[s]=1;
	while(!q.empty()) 
    {
		int u=q.front();q.pop();
		for(int i=fir[u];i;i=e[i].nt)
			if(e[i].w&&!dep[e[i].v]) 
            {
				dep[e[i].v]=dep[u]+1;
				q.push(e[i].v);
			}
	}
	return dep[t];
}
int dfs(int u,int in) 
{
	if(u==t)    return in;
	int out=0;
	for(int i=fir[u];i&&in;i=e[i].nt)
		if(e[i].w&&dep[e[i].v]==dep[u]+1) 
		{
			int res=dfs(e[i].v,min(e[i].w,in));
			e[i].w-=res;e[i^1].w+=res;
			in-=res;out+=res;
		}
	if(!out)    dep[u]=0;	return out;
}
signed main() 
{
	cin>>n>>m>>s>>t;for(int i=1;i<=m;i++){cin>>u>>v>>w;into(u,v,w);into(v,u,0);}
	while(bfs()) ans+=dfs(s,1e18);
	cout<<ans<<endl;return 0;
}

换行1
换行2

换行3
下面是分界线:


行内数学公式:

\(a\equiv1\pmod{m}\)

上一篇:C++循环队列的实现(五)


下一篇:Codeforces 354D - Transferring Pyramid(DP)