摘要: https://codeforces.com/contest/1611/problem/F 负了就停止,这使得问题有了单调性,使用双指针 双指针模版 //初始为空 int l = 1, r = 0; ll sum = 0; for ( ; l <= n; ++ l ) { r = max(l - 1 阅读全文
posted @ 2022-04-05 17:13 qingyanng 阅读(25) 评论(0) 推荐(0) 编辑
摘要: 二分图最大匹配 最多取多少条边,满足卡片不重叠--所有选出的边没有公共点--二分图放最多的牌--找到最多的边--二分图上最大匹配。 一条直线的两个端点要被分到两个集合,x+y值是奇数的在一个集合,是偶数的在一个集合。然后二分图最大匹配就行了,每次扫奇数点 #include <bits/stdc++. 阅读全文
posted @ 2022-04-05 09:48 qingyanng 阅读(41) 评论(0) 推荐(0) 编辑
摘要: 把囚犯分成两部分,显然是一个二分图 二分答案,使问题状态化简为1和0,考虑如何check 贪心:如果两个囚犯之间怨气值小于等于mid,则不用管他们,否则把他们分成两拨(染异色) #include<bits/stdc++.h> using namespace std; #define IOS ios: 阅读全文
posted @ 2022-04-05 09:39 qingyanng 阅读(26) 评论(0) 推荐(0) 编辑