省选模拟 19/11/05

Posted qq62c30ac77b2a7

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了省选模拟 19/11/05相关的知识,希望对你有一定的参考价值。

​黑白划分 ​​​ 最后答案的个数就是非纯色正方形的个数
考虑容斥,用总的减去纯色的
发现对每一个纯色的都要减去它覆盖的四个的贡献,而这样减正好能减完,令 省选模拟 表示边长为 省选模拟 的个数
省选模拟
然后发现两个维度是独立的,我们对两个维度分别求出它的连续纯色区间个数,乘起来就是答案
分离两个维度的考虑巧妙

#include<bits/stdc++.h>
#define cs const
using namespace std;
int read()
int cnt = 0, f = 1; char ch = 0;
while(!isdigit(ch)) ch = getchar(); if(ch == -) f = -1;
while(isdigit(ch)) cnt = cnt*10 + (ch-0), ch = getchar();
return cnt * f;

cs int N = 21, M = 1 << 20 | 5;
typedef long long ll;
int n, q, S, lg[M];
struct Segmentree
int sum[M << 2], ct[N];
#define mid ((l+r)>>1)
void pushup(int x, int l, int r)
int pre = sum[x];
sum[x] = sum[6687. 2020.06.04省选模拟树没了(tree)

[noi.ac省选模拟赛]第12场题解集合

2018 省选 D1T2 IIIDX

省选模拟(66~70)

bzoj省选十连测推广赛

省选模拟1