上一页 1 2 3 4 5 6 7 8 9 ··· 17 下一页
摘要: 【题意】 【分析】 这个题目也用到了平方拆边的技巧,其次这里有一个保证参与学生最多的限制 这个我们可以贪心来解决,也就是说每一个学生我们先让他选一个,剩下的只有在能带给我收益的情况下才进行增广 这样我们就得到了如下的建图方式 学习小组向T建C,3C,5C,.... S向学生连(k,0)的边 ,让学生 阅读全文
posted @ 2021-06-07 15:09 andyc_03 阅读(55) 评论(0) 推荐(0) 编辑
摘要: 【题意】 坐标系中,有n个建筑,给定坐标和建筑内人数和m个避难点,给定坐标和容量 定义每个人走的距离为|x1-x2|+|y1-y2|+1,问给定的方案是否是最优方案 【分析】 费用流消圈例题 我们按照给定方案建立残量网络,寻找负环进行增广即可 正常的消圈算法是不断找负环直到没有为止,但这道题目只要求 阅读全文
posted @ 2021-06-07 15:02 andyc_03 阅读(62) 评论(0) 推荐(0) 编辑
摘要: 【题意】 【分析】 很明显这种决策的选择我们可以用万能的网络流解决 然后呢,我们发现点数较多,需要用权值线段树合并来优化建图 那么就结束了。。。 【代码】 #include<bits/stdc++.h> using namespace std; typedef long long ll; const 阅读全文
posted @ 2021-06-07 14:02 andyc_03 阅读(38) 评论(0) 推荐(0) 编辑
摘要: 【题意】 每个厨师做每道菜的时间不同,每个菜有一定的需求,求所有菜被做完的等待时间之和 这个一道菜的等待时间是这个厨师开始做一道菜一直到他这道菜做完的时间,这个比较坑,开始理解错了 【分析】 首先考虑每道菜的作为第1,2,3...被做的贡献是递增的 我们可以把厨师拆点,分成做第i道菜的厨师,然后对于 阅读全文
posted @ 2021-06-07 13:07 andyc_03 阅读(58) 评论(0) 推荐(0) 编辑
摘要: 【题意】 【分析】 这道题目可以说集结了蛮多套路 首先就是平方拆边,平方拆边指的是当贡献是平方这种形式的时候,我们可以增量构造边,保证每次走的边递增 比如$(a+1)^2-a^2=2a+1$,那么我们建的边就是a,3a,5a.....,这样既保证了从小到大依次走,也保证了平方的形式 第二个套路就是费 阅读全文
posted @ 2021-06-07 12:14 andyc_03 阅读(46) 评论(0) 推荐(0) 编辑
摘要: 【题意】 【分析】 这个就是推一波式子 最后这个式子的转换比较套路 【代码】 #include<bits/stdc++.h> using namespace std; typedef long long ll; const int maxn=1e6+5; int np[maxn],p[maxn],c 阅读全文
posted @ 2021-06-07 11:55 andyc_03 阅读(27) 评论(0) 推荐(0) 编辑
摘要: 【题意】 【分析】 首先我们可以简单容斥一下 设$calc(x,y)=\sum_{i=1}^{x}\sum_{j=1}^{y}[gcd(i,j)=1]$ 那么$ans=calc(b,d)-calc(a-1,d)-calc(c-1,b)+calc(a-1,c-1)$ 然后求$calc(x,y)$的套路 阅读全文
posted @ 2021-06-07 11:50 andyc_03 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 【题意】 【分析】 设$f_i$表示循环节长度为i的字符串的个数 设$g_i$表示循环节长度为i的因数的字符串个数 容易求出$g_i=26^i$,因为所有长度为i的字符串的循环节长度一定都是i的因数 然后我们利用莫比乌斯反演可以求出$f_n=\sum_{d|n}g(d)\mu(n/d)$ 【代码】 阅读全文
posted @ 2021-06-07 11:45 andyc_03 阅读(36) 评论(0) 推荐(0) 编辑
摘要: 【题意】 【分析】 经典的最大权闭合图问题,我们将S与所有权值为正的点连一条容量为其权值的边,将所有权值为负的点与T连一条容量为其权值的绝对值的边,原来的边将其容量定为正无穷 然后跑一遍最大流即可 【代码】 #include<bits/stdc++.h> using namespace std; c 阅读全文
posted @ 2021-06-06 12:50 andyc_03 阅读(43) 评论(0) 推荐(0) 编辑
摘要: 【题意】 【分析】 这是一道很好的的拆点建图的费用流,首先这个餐巾因为要分干净和脏的,所以容易想到拆点的做法 然后呢,这个建图就很神了 我们把每一天拆成两个点,晚上和上午 1.S->晚上 和 上午->T ,建立(ri,0)表示晚上接受ri脏餐巾,白天花费ri干净餐巾,费用均为0 2.i天晚上->i+ 阅读全文
posted @ 2021-06-06 11:39 andyc_03 阅读(55) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 ··· 17 下一页