CSP-S 模拟 19/11/02

Posted qq62c30ac77b2a7

tags:

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

CSP-S
CSP-S
将最后形成的三元组分类
三个一样的,两个一样的,三个都不一样的分别计算就比较方便
三个一样的和两个一样的可以 CSP-S
三个都不一样显然枚举两个然后算出另一个


关于手写一些可以实现CSP-S功能的东西
可以用一个类似邻接表的东西存

int first[Mod], nxt[N], to[N], val[N], tot;  
int ask(int p)
int x = p % Mod;
for(int i = first[x]; i; i = nxt[i]) if(to[i] == p) return val[i];
return 0;

void add(int p, int v)
int x = p % Mod;
for(int i = first[x]; i; i = nxt[i]) if(to[i] == p) val[i] += v; return;
nxt[++tot] = first[x], first[x] = tot, to[tot] = p, val[tot] = v;

也可以冲突就暴力挪位

struct MAP
static cs int Mod = 1e7+9;
int key[Mod], val[Mod];
Map() memset(key, -1, sizeof(key));
int pos(int k)
int h = k % Mod;
while(key[h] != -1 && key[h] != k) h = h+1 == Mod ? 0 : h+1;
return h;

void ins(int k)
int h = pos(k);
if(key[h] == -1) key[h] = k, val[h] = 1;
else val[h]++;

int find(int k)
int h = pos(k);
return key[h] == -1 ? 0 : val[h];

;

也可以离散化然后暴力二分

struct MAP
int b[N], 「CSP-S模拟赛」2019第一场

CSP-S模拟57

CSP-S模拟测试69 题解

csp-s模拟测试96

csp-s模拟测试93

反省——关于csp-s模拟50