上一页 1 ··· 112 113 114 115 116 117 118 119 120 ··· 130 下一页
摘要: ![](https://img2023.cnblogs.com/blog/2490134/202311/2490134-20231121094735108-365034293.png) 阅读全文
posted @ 2023-11-21 09:47 最爱丁珰 阅读(8) 评论(0) 推荐(0)
摘要: ![](https://img2023.cnblogs.com/blog/2490134/202311/2490134-20231121094702412-423240584.jpg) 阅读全文
posted @ 2023-11-21 09:47 最爱丁珰 阅读(166) 评论(0) 推荐(0)
摘要: 我的代码: #include<bits/stdc++.h> using namespace std; const int N=1000; int n; char s[N][N]; void work(int x) { if(x==1) { s[0][0]='*'; return; } work(x- 阅读全文
posted @ 2023-11-20 15:38 最爱丁珰 阅读(11) 评论(0) 推荐(0)
摘要: 假设我们已经给每一个任务分配了一种模式了 那么相同模式的任务排在一起的时候肯定重启次数最小 对涉及到的模式,我们还原回二分图上 很显然的一点就是如果对某个任务,其\(a\)或\(b\)为\(0\),那么肯定是放在对应的机器上做的,于是我们对应的机器的模式编号直接从\(1\)开始编号,那么一种模式就代 阅读全文
posted @ 2023-11-17 16:52 最爱丁珰 阅读(17) 评论(0) 推荐(0)
摘要: 根据性质二,我们右部选出的被标记的点一定是匹配点 根据性质三,我们右部选出的点对应的左部的匹配点一定都被标记了,所以这些点不会被选择 根据性质一,我们左部选出的没被标记的点一定是匹配点 根据性质三,我们左部选出的点对应的右部的匹配点一定都没被标记,所以这些点不会被选择 所以我们选出的点集不会有任何的 阅读全文
posted @ 2023-11-17 16:41 最爱丁珰 阅读(49) 评论(0) 推荐(0)
摘要: ![](https://img2023.cnblogs.com/blog/2490134/202311/2490134-20231116221722366-1620453470.png) 阅读全文
posted @ 2023-11-16 22:17 最爱丁珰 阅读(10) 评论(0) 推荐(0)
摘要: 二分是怎么想到的? 我们假设已经找到了最终的方案,那么每一座防御塔都被分到了一些敌人去攻击 那么这个方案的时间是多少呢?就是每个防御塔的时间的最大值 每个防御塔的时间是他所分配的这些敌人里面所需要花费最长的时间去攻击的敌人的时间 相当于最大值最小,所以想到二分 蓝书上的做法固然正确,但是如果像我们上 阅读全文
posted @ 2023-11-16 22:02 最爱丁珰 阅读(10) 评论(0) 推荐(0)
摘要: 1.拆点 首先对原图的任意一个匹配,显然可以在新图中找到对应的匹配(当然不止一种) 而新图的任意一个匹配,我们先将其进行标准化,具体来说,对原图中\(j\)拆成的若干个节点,他们在新图中的连边全部往前面放,并且按照左部节点的顺序大小排序(见下),根据鸽巢原理,肯定能找到原图 阅读全文
posted @ 2023-11-16 21:00 最爱丁珰 阅读(12) 评论(0) 推荐(0)
摘要: 首先,用scanf对指针进行输入的时候,不要对指针加& 然后,对指针进行输入时,最好先把指针指向一个明确的地址,比如 #include<bits/stdc++.h> #define ll long long using namespace std; int main() { int p; int * 阅读全文
posted @ 2023-11-15 23:20 最爱丁珰 阅读(132) 评论(0) 推荐(0)
摘要: 首先看蓝书上的代码 为什么即将开始dfs时,没有一开始就把\(vis[i]\)标记了? 其实dfs的流程是从左部的一个节点出发,考察右部的一个节点,如果右部的节点已经匹配了,下次dfs直接从这个右部节点的匹配点开始计算,所以vis的标记都是标记的右部节点,左部节点是不用标记的(因为是匹配二分图,只会 阅读全文
posted @ 2023-11-15 22:29 最爱丁珰 阅读(14) 评论(0) 推荐(0)
上一页 1 ··· 112 113 114 115 116 117 118 119 120 ··· 130 下一页