寒假九
2 按照题目规则去模拟 取所有情况的min
10101010
01010101
4 2e5 暴力骗25分
前缀和优化
非常经典的一道题 去掉某个数 跳过某个数 前缀和后缀都拼一拼
l[i-1] r[i+1] 跳过i
gcd 是取max
lcm 是取min
6 set
集合存下标 lower_bound查找 区间内 包含的种类个数
单点修改
if(it!=se[i].end()&&*it<=r)ans++; 注意细节
7
如果某个水平段的白色方块数超过 k,则增加一次垂直切割次数,并重置当前列的白色方块累计值 d。
再次遍历当前列,并判断是否能在新的切割方案下满足白色方块数要求。如果仍然不能满足,goto跳出循环 (比较贪心的思想) 次数加一依然不合法就跳过这次now状态
先统计行的 切几刀分为几块 然后再 枚举列数 如果当前列数并且再枚举行数,如果不合法就切一刀 memset重新计算块内大小的巧克力,再不合法就跳过此次循环 (贪心)
二进制枚举 + 单独考虑行和列
浙公网安备 33010602011771号