不断插入元素,询问某元素出现次数。
struct node{
int nxt, key, cnt;
} t[N];
ll head[mod + 20], tot;
void add(ll x)
{
for(int i = head[x % mod]; i; i = t[i].nxt) // Already Have
{
if(t[i].key == x)
{
++t[i].cnt;
return;
}
}
t[++tot].key = x;
t[tot].cnt = 1;
t[tot].nxt = head[x % mod];
head[x % mod] = tot;
}
ll check(ll x)
{
for(int i = head[x % mod]; i; i = t[i].nxt)
if(t[i].key == x) return t[i].cnt;
return 0;
}