Commit a6c29c0d authored by 24OI-bot's avatar 24OI-bot
Browse files

style: format markdown files with remark-lint

parent 204c8834
Loading
Loading
Loading
Loading
+53 −52
Original line number Diff line number Diff line
@@ -51,13 +51,13 @@

算法步骤大致如下:

1.首先从任意一个未配对的点$u$开始,选择他的任意一条边($u$-$v$),如此时$v$还未配对,则配对成功,配对数加一,若$v$已经配对,则尝试寻找$v$的配对的另一个配对(该步骤可能会被递归的被执行多次),若该尝试成功,则配对成功,配对数加一。
1\. 首先从任意一个未配对的点 $u$ 开始,选择他的任意一条边( $u$ - $v$ ),如此时 $v$ 还未配对,则配对成功,配对数加一,若 $v$ 已经配对,则尝试寻找 $v$ 的配对的另一个配对该步骤可能会被递归的被执行多次,若该尝试成功,则配对成功,配对数加一。

2.若果上一步配对不成功,那么选择重新选择一条未被选择过的边,重复上一步。
2\. 若果上一步配对不成功,那么选择重新选择一条未被选择过的边,重复上一步。

3.对剩下每一个没有被配对的点执行步骤1,直到所有的点都尝试完毕。
3\. 对剩下每一个没有被配对的点执行步骤 1,直到所有的点都尝试完毕。

用下面的二分图为例:
用下面的二分图为例

![](./images/bi-graph-1.png)

@@ -95,7 +95,8 @@ bool dfs(int u){
    int v = G[u][i];
    if (vis[v]) continue;
    vis[v] = 1;
        if(!match[v] || dfs(match[v])){ //如果v没有匹配,或者v的匹配找到了新的匹配
    if (!match[v] ||
        dfs(match[v])) {  //如果v没有匹配,或者v的匹配找到了新的匹配
      match[v] = u;
      match[u] = v;  //更新匹配信息
      return 1;
@@ -138,7 +139,7 @@ int main(){

该问题可以转化为 [费用流](graph/flow/min-cost) 问题解决。

设$G=<V_1, V_2, E>$是一个带边权的二分图,不妨在图中添加源点$s$和汇点$t$,从$s$$V_1$中的所有节点连一条流量为1,费用为0的边,从$V_1$$V_2$的所有节点向$t$连一条流量为1,费用为0的边,并且将$V_1$$V_2$之间的边改成从$V_1$指向$V_2$,流量为1,费用为边权的边,此时该图的最大费最大流的费用即为最大权匹配的边权和,流量流过的边和点构成的子图(删去新添加的点和边后)即为$G$的最大权匹配。
 $G=<V_1, V_2, E>$ 是一个带边权的二分图,不妨在图中添加源点 $s$ 和汇点 $t$ ,从 $s$$V_1$ 中的所有节点连一条流量为 1,费用为 0 的边,从 $V_1$$V_2$ 的所有节点向 $t$ 连一条流量为 1,费用为 0 的边,并且将 $V_1$$V_2$ 之间的边改成从 $V_1$ 指向 $V_2$ ,流量为 1,费用为边权的边,此时该图的最大费最大流的费用即为最大权匹配的边权和,流量流过的边和点构成的子图删去新添加的点和边后即为 $G$ 的最大权匹配。

## 一般图匹配

+9 −9
Original line number Diff line number Diff line
@@ -32,35 +32,35 @@ Dev-C++ 各版本的安装步骤大同小异,下面以最新版本 5.11 演示

 [下载链接](https://sourceforge.net/projects/orwelldevcpp/files/latest/download) 

1\. 首先选择安装语言,这里选择英语,然后点击 OK。
1.首先选择安装语言,这里选择英语,然后点击 OK。

![](./images/Dev-C++-1.png)

2\. 同意使用协议,即点击 I Agree。
2.同意使用协议,即点击 I Agree。

![](./images/Dev-C++-2.png)

3\. 选择安装方式,此处直接点击 Next>。
3.选择安装方式,此处直接点击 Next>。

![](./images/Dev-C++-3.png)

4\. 选择安装路径,按需要选择,然后点击 Install。
4.选择安装路径,按需要选择,然后点击 Install。

![](./images/Dev-C++-4.png)

5\. 安装完毕后,点击 Finish 来开始初始化 Dev-C++。
5.安装完毕后,点击 Finish 来开始初始化 Dev-C++。

![](./images/Dev-C++-5.png)

6\. 选择语言为简体中文,然后点击 > Next。
6.选择语言为简体中文,然后点击 > Next。

![](./images/Dev-C++-6.png)

7\. 选择你的主题和风格,这些以后可以在编辑器选项里调整,然后点击 > Next。
7.选择你的主题和风格,这些以后可以在编辑器选项里调整,然后点击 > Next。

![](./images/Dev-C++-7.png)

8\. 点击 OK 以完成安装。
8.点击 OK 以完成安装。

![](./images/Dev-C++-8.png)

@@ -68,7 +68,7 @@ Dev-C++ 各版本的安装步骤大同小异,下面以最新版本 5.11 演示

1、常用快捷键

1.文件部分
1\. 文件部分

-    `Ctrl + N` : 创建源代码
-    `Ctrl + O` : 打开文件