数据结构与算法

1516 篇文章
91 人订阅

全部文章

attack

C++语法小技巧

enum [enumeration name] {enumerator1[=value1], enumerator2[=value2], ...};

643
attack

ZROJ#397. 【18提高7】模仿游戏(爆搜)

读完题目后不难发现,每次约束的条件相当于是\(b[((x[i] + i) % N + (i / N) % N) % N] = y[i]\)

955
attack

ZROJ#398. 【18提高7】随机游走(期望dp 树形dp)

不难得到方程\(f[x] = \sum_{to \in son[x]} f[to] + d[x]\)

1085
attack

BZOJ3033: 太鼓达人(欧拉回路)

第一问的答案是\(2^M\),因为每个位置只有\(0 / 1\)两种情况,最优情况下一定是每个位置代表着一个长度为\(K\)的字符串

692
attack

cf1064D. Labyrinth(01BFS)

给出一个\(n \times m\)的网格,给出起始点,要求向左走不超过\(L\)步,向右走不超过\(R\)步,求出能遍历到哪些点

582
attack

POJ1659 Frogs' Neighborhood(Havel–Hakimi定理)

\(\sum_{i = 1}^k d_i \leqslant k(k - 1) + \sum_{i = k + 1}^n min(d_i, k)\)

502
attack

HDU 5215 Cycle(dfs判环)

\(T\)组数据,给出\(n\)个点\(m\)条边的有向图,问是否存在一个奇环/偶环

472
attack

cf1064E. Dwarves, Hats and Extrasensory Abilities(二分 交互)

\(n\)次操作,每次你给出一个点的坐标,系统会返回该点的颜色(黑 / 白),程序最后输出一条直线把所有黑点和白点分隔开

1313
attack

cf888G. Xor-MST(Boruvka最小生成树 Trie树)

给出\(n\)点,每个点有一个点权\(a[i]\),相邻两点之间的边权为\(a[i] \oplus a[j]\),求最小生成树的值

1004
attack

Topcoder SRM 698 Div1 250 RepeatString(dp)

583
attack

TopcoderSRM679 Div1 250 FiringEmployees(树形dp)

有一个 \(n\) 个点的树,每个点有点权(点权可能为负) ,求包含点\(1\)的最 大权连通子图(的权值和) 。 \(n \leqslant 2500\)

403
attack

Topcoder SRM 563 Div1 500 SpellCards

有\(n\)张符卡排成一个队列,每张符卡有两个属性,等级\(li\)和伤害\(di\)。 你可以做任意次操作,每次操作为以下二者之一:

371
attack

HihoCoder#1279 : Rikka with Sequence(dp 枚举子集 二进制 神仙题)

首先最裸的dp应该比较好想,设\(f[i][j][k]\)表示前\(i\)个数选出来的数异或和为\(j\),按位与和为\(k\)的方案数

632
attack

洛谷P3177 [HAOI2015]树上染色(树上背包)

比较套路吧,设\(f[i][j]\)表示以\(i\)为根的子树中选了\(j\)个黑点对答案的贡献

611
attack

HihoCoder#1509 : 异或排序(二进制)

设\(a_i\)与\(a_i + 1\)最高的不同位分别为0 1,显然\(S\)的这一位必须为\(0\),否则这一位必须为\(1\)

621
attack

HihoCoder#1513 : 小Hi的烦恼(五维数点 bitset 分块)

五位数点问题,写个cdq分治套cdq分治套cdq分治套cdq分析就完了 可以用bitset搞

391
attack

cf914F. Substrings in a String(bitset 字符串匹配)

452
attack

BZOJ4503: 两个串(bitset字符串匹配)

就是记录匹配串中每个元素出现的位置,将第\(i\)个位置的bitset右移\(i\)位后与起来

571
attack

agc001E - BBQ Hard(dp 组合数)

首先,我们可以把\(C_{a_i + b_i + a_j + b_j}^{a_i + a_j}\)看做从\((-a_i, -b_i)\)走到\((a_j, b_...

631
attack

BZOJ2462: [BeiJing2011]矩阵模板(二维hash)

二维矩阵hash,就是对行和列分配一个不同的base,然后分别做一遍hash,这样会减少冲突的概率。

401

扫码关注云+社区