- 博客(18)
- 收藏
- 关注
原创 Codeforces Round #822 (Div. 2) (A to D)
Codeforces Round #822 (Div. 2)(A to D)
2022-09-24 00:55:52 144
原创 『CF639X』
CF639A Bear and Displayed Friends开一个小根堆,逢插入操作,若堆中元素个数小于KKK,则直接插入,否则与堆顶判断,若大于堆顶,则弹出堆顶后插入.顺便维护一个bookbookbook数组标记每个元素是否在堆中,插入弹出的时候维护一下下就可以了.const ll N=3e5+5;priority_queue<pair<ll, ll>, vector<pair<ll, ll> >, greater<pair<ll, ll
2020-12-03 10:47:58 251
原创 『CF666X』
CF666A Reberland Linguisticsdpdpdp不大好搞,状压吧.f[i][0/1]f[i][0/1]f[i][0/1]表示以iii结尾长为2/32/32/3的后缀能否成立,然后无脑搜索.const ll N=1e5+5;char wn[N];ll n;bool f[N][2];bool vis[N][2];string s[N];ll cnt;inline bool dfs(ll now, ll st){ if (now>n) return false
2020-12-03 07:31:26 469
原创 『CF685X』
CF685A Robbers’ watch首先明确值域:时和分上上限为n−1,m−1n-1,m-1n−1,m−1.然后我们求出n−1,m−1n-1,m-1n−1,m−1在777进制下的位数,若位数之和大于777则直接输出000,否则由于值域很小所以暴力状压。const ll N=1e5+5;inline ll calc(ll x){ if (x==0) return 1; ll res=0; while (x){ ++res; x/=7; } return res;}ll
2020-12-02 22:13:53 110
原创 『CF687X』
CF687A NP-Hard Problem简单题,跑一遍二分图即可.const ll N=1e5+5;ll head[N], to[N<<1], next[N<<1], tot;inline void add(ll x, ll y){ to[++tot]=y; next[tot]=head[x]; head[x]=tot;}inline void Link(ll x, ll y){ add(x, y); add(y, x);}ll n, m;ll co
2020-12-02 21:21:17 124
原创 声明
小蒟蒻mlg开通CSDN\mathcal{CSDN}CSDN啦!我写博客有个习惯,代码只copycopycopy核心部分,剩下的框架挂在下面,如有需要调试,则在此框架上加入核心代码即可.#include<iostream>#include<cstdio>#include<cstdlib>#include<cstring>#include<cmath>#include<algorithm>#include<map>
2020-12-01 22:16:49 62
原创 树同构简述
引入树是一种常见的数据结构。我们把NNN个点,N−1N-1N−1条边的联通无向图称为树。对于两棵树T1和T2T_1和T_2T1和T2,如果能够把树T1T_1T1的所有点重新标号,使得树T1和T2T_1和T_2T1和T2完全相同,那么称这两棵树是同构的。也就是说,它们具有相同的形态。下面介绍如何判断树同构。解决树同构问题我们一般使用树哈希.哈希方式很简单,根据下面这个式子来算:Fi=1+∑v∈{son[x]}f[v]∗prime[siz[v]]F_i=1+\sum_{v\in\{son[
2020-12-01 20:21:31 1335
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人