BZOJ
strategist_614
这个作者很懒,什么都没留下…
展开
-
BZOJ2465
BZOJ 2465 题目 BZOJ2465 分析 贪心 将小球的分数从大到小排序 将瓶子容积从小到大排序 将球放入瓶子中时遵循尽量找到比小球分数大的瓶子中容积最小的。 代码 const int N = 205; int a[N]; struct node { int c; int q; } b[N]; bool cmp(int a, int b) { return a > ...原创 2020-01-26 13:33:52 · 149 阅读 · 0 评论 -
BZOJ选(大佬的
普及 2659 数学 1968 整除分块 2761 去重 3767 高精度A+B 1432 找规律(神题) 3098 随机卡HASH 1800 统计 1218 枚举 4001 生成函数 + 卡特兰数 2760 字符串处理 1088 DP/判断 1034 贪心 1207 DP 2748 DP 4302 分类讨论 1083 最小生成树 2563 转换后排序 3...原创 2019-07-27 01:06:47 · 112 阅读 · 0 评论 -
BZOJ1059
BZOJ1059 题目 BZOJ1059 分析 考虑二分图。。 参考黄学长思路:同行同列的点无论经过多少次变换仍然是同行或同列,所以题目可转换为能不能找到 nnn 个互相不同行或同列的 111 点。 只交换列,不用管行:如果每一行都有列来获得 111,则交换行不影响列中 111 的数量 具体做法:当 a[i][j]=1a[i][j] = 1a[i][j]=1 即:这个点是黑色的时候, i,...原创 2019-07-31 23:25:20 · 150 阅读 · 0 评论 -
BZOJ1036
BZOJ1036 题目 BZOJ1036 分析 裸的树链剖分。。 线段树:单点更新,区间查询即可。。不会的可以看之前的博客。。 代码 const int N = 1e5 + 5; int head[N], ver[N << 1], Next[N << 1]; int size[N], d[N], son[N], fa[N], cnt, top[N], rk[N]...原创 2019-08-05 16:20:36 · 113 阅读 · 0 评论 -
BZOJ3155
BZOJ3155 题目 BZOJ3155 分析 要求的 SnS_nSn : Sn=∑i=1n∑j=1iajSn=∑i=1n(n−i+1)ai容斥一下:Sn=(n+1)∑i=1nai−∑i=1ni×ai \begin{aligned} &S_n = \sum_{i = 1}^{n}\sum_{j = 1}^{i}a_j \\ &S_n = \sum_{i =...原创 2019-08-07 23:11:13 · 126 阅读 · 0 评论 -
BZOJ1258
BZOJ1258 题目 BZOJ1258 分析 真 —— 规律题 首先题目中样例解释有误:T12T12T12 靠 T14T14T14 和 T4T4T4 。 经过找规律可知:当读入是 T......4T......4T......4 时: 答案显然是:T.......1T.......2T.......3T.......1 \quad T.......2\quad T.......3T......原创 2019-07-27 22:56:17 · 136 阅读 · 0 评论 -
BZOJ1028
BZOJ1028 题目 BZOJ1028 分析 nnn 的范围较小,可以暴力枚举。。 第一层循环枚举缺的那个和牌的数字,判断加上那个数字能否和牌。 第二层循环枚举对子牌,判断是否有个数大于等于 222 的数字当对子牌。若可以,判断能否组成顺子能刻子,先考虑刻子,原因是顺子牌构成需要其他牌的辅助,而其他的牌不一定存在,所以优先自己解决,这样更容易和牌。 第三层循环判断顺子、刻子。 时间复...原创 2019-07-28 17:58:17 · 152 阅读 · 0 评论 -
BZOJ5293
BZOJ 5293 题目 BZOJ5293 分析 考虑 lcalcalca 。。 注意到 kkk 的范围只有 505050 这提示我们再询问之前预处理所有的 kkk 下的前缀和,在询问中统计即可。注意取模。 代码 const int SIZE = 300010; const int mod = 998244353; ll f[SIZE][20], d[SIZE], dist[SIZE]...原创 2019-08-01 21:54:55 · 144 阅读 · 0 评论 -
BZOJ1407
BZOJ1407 题目 BZOJ1407 分析 考虑位置移动后相等的情况。。 ci+xpi≡cj+xpj(modn)c_i + xp_i \equiv c_j + xp_j \pmod nci+xpi≡cj+xpj(modn) nnn 为山洞数 x(pi−pj)≡cj−ci(modn)x(p_i - p_j) \equiv c_j - c_i \pmod nx(pi−pj)≡c...原创 2019-08-07 16:34:49 · 134 阅读 · 0 评论 -
BZOJ1103
BZOJ 1103 题目 BZOJ1103 分析 考虑树链剖分 本题考虑边的个数,而不是点的个数。但是可以考虑用点权代替边权,nnn 个点会有 n−1n - 1n−1 条边,所以在操作时只考虑 n−1n - 1n−1 个点即可。 代码 const int N = 250005; int head[N], ver[N], Next[N]; int d[N], son[N], fa[N],...原创 2019-08-07 21:06:38 · 177 阅读 · 0 评论 -
BZOJ2565
BZOJ2565 题目 BZOJ2565 分析 前置知识: manachermanachermanacher 要知道 manachermanachermanacher 的性质:插完无关字符后得到的回文路径数组 hw[i]hw[i]hw[i] ,可以通过这个数组得到原字符串当前位置下的最长回文路径即:hw[i]−1hw[i] - 1hw[i]−1。这个可以自己模拟模拟 假设 manacher...原创 2019-08-12 23:49:30 · 151 阅读 · 0 评论 -
BZOJ1800
BZOJ1800 题目 BZOJ1800 分析 采用断环成链的处理方式,枚举链的起点,再枚举三个断点 i,j,ki,j,ki,j,k ,满足 sum[i]−sum[s−1]==sum[k]−sum[j]&&s[j]−sum[i]==sum[s+n−1]−sum[k]sum[i] - sum[s - 1] == sum[k] - sum[j] \&a...原创 2019-07-26 13:01:55 · 117 阅读 · 0 评论 -
BZOJ3631
BZOJ 3631 题目 BZOJ3631 分析 考虑 LCALCALCA + 差分 主要算法不讲了。。 现在考虑一下细节:a1→a2,a2→a3,...an−1→ana_1 \rightarrow a_2,a_2 \rightarrow a_3,...a_{n-1} \rightarrow a_{n}a1→a2,a2→a3,...an−1→an 标记点时在 a1→a2,a2→...原创 2019-08-03 14:35:40 · 147 阅读 · 0 评论 -
BZOJ3288
BZOJ 3288 题目 BZOJ3288 分析 题目比较神奇,首先要知道求矩阵行列式的值是可以进行行列式变换,变换成阶梯矩阵,则最后的答案是 ∣A∣=∏i=1naii|A| = \prod_{i = 1}^{n}a_{ii}∣A∣=∏i=1naii 我们计算 n=1∼10n = 1 \sim 10n=1∼10 的行列式的值。(运用行列式变换的方法) 可以得到对角上的 $a_{ii} ...原创 2019-07-14 13:36:37 · 114 阅读 · 0 评论 -
BZOJ2462
BZOJ 2462 (二维hash学习) 二维hash 创建两个种子 base1,base2base1,base2base1,base2 创建一个 无符号 646464 位数组 hashahashahasha 先对每一行做前缀 hashhashhash 值 for (int i = 1; i <= n; i++) for (int j = 1; j <= m; j++) ...原创 2019-07-15 12:24:31 · 97 阅读 · 0 评论 -
BZOJ2761
BZOJ 2761 题目 BZOJ2761 分析 用 mapmapmap 标记第一次出现,之后再出现就不输出就可以了 hashhashhash 表的方法一直 RERERE 洛谷能够通过,可能洛谷数据水吧。。。有时间研究一下。。。 记录一下 hashhashhash 质数表 61, 83, 113, 151, 211, 281...原创 2019-07-15 12:26:13 · 118 阅读 · 0 评论 -
BZOJ2563
BZOJ 2563 题目 BZOJ2563 分析 贪心 一般这种问题的贪心都是对等效权值进行贪心构造。所以可以将边权等效到两个连接的点构成点权。又因为在同一选择集合中的两个点 a,ba,ba,b 如果有边相连的情况,那么在计算 a,ba,ba,b 的点权时边权只用计算一次,所以化边权为点权时除以了 222 。不在一个选择集合的两个点的边权值会通过相减抵消,不用计算。 代码 const ...原创 2019-07-16 21:10:27 · 114 阅读 · 0 评论 -
BZOJ1197
BZOJ 1197 题目 BZOJ1197 分析 考虑 DPDPDP f[i][j]f[i][j]f[i][j] 表示 前 iii 维空间划分 jjj 部分最多可以分出多少空间 可以找找规律: 一维是:2,4,6,8,10...2,4,6,8,10...2,4,6,8,10... 二维是: 2,4,8,14,22...2,4,8,14,22...2,4,8,14,22... 找规律可以发...原创 2019-07-23 22:57:00 · 119 阅读 · 0 评论 -
BZOJ1034
BZOJ1034 题目 BZOJ1034 分析 比较神的贪心 分三种情况: 我方最弱的比对方最弱的强,稳拿两分 我方最强的比对方最强的强,稳拿两分 我方最弱的和对方最强的同一个实力,拿一分 最后实在不行让最弱的去送对方最强的人头 代码 const int N = 1e5 + 5; int a[N]; int b[N]; int n; int solve(int a[], int b...原创 2019-07-19 17:56:28 · 106 阅读 · 0 评论 -
BZOJ2748
BZOJ2748 题目 BZOJ2748 分析 考虑 DPDPDP f[i][j]f[i][j]f[i][j] 表示音量为 jjj 可以由前 iii 次增加或减少构成 f[i][j]=1(f[i−1][j+a[i]]=1∣∣f[i−1][j−a[i]]=1) f[i][j] = 1 \qquad (f[i - 1][j + a[i]] = 1 || f[i - 1][j - a[i]] ...原创 2019-07-19 20:41:04 · 131 阅读 · 0 评论 -
BZOJ1191
BZOJ1191 题目 BZOJ1191 分析 由题意可知,可以从二分图考虑建模。 以题目为左部顶点,锦囊为右部顶点。根据题目要求题目和锦囊连边即可。注意当当前点没有增广路时,跳出循环。 代码 const int N = 1005; const int M = 1e6 + 5; int n, m, tot; int head[N], Next[M], ver[M], visit[N];...原创 2019-07-29 16:49:19 · 80 阅读 · 0 评论 -
BZOJ1816
BZOJ1816 题目 BZOJ1816 分析 考虑二分。。 发现若二分最多组成套牌数目,[1,r][1,r][1,r] 可以组成,[1,r−1][1,r - 1][1,r−1] 也必然可以组成,显然满足单调性。 二分套牌数目,因为要组成 midmidmid 数目的套牌,所以 a[i]a[i]a[i] 的数目都不可能比 midmidmid 小,如果比 midmidmid 小那么就要使用 j...原创 2019-08-02 15:21:50 · 119 阅读 · 0 评论 -
BZOJ1485
BZOJ1485 题目 BZOJ1485 分析 可以找规律发现是 CatlanCatlanCatlan 数列。。 还是证明一下: 性质2:a1<a3<..<a2i−1a_1 < a_3 < ..<a_{2i-1}a1<a3<..<a2i−1 , a2<a4<...原创 2019-08-02 23:10:45 · 161 阅读 · 0 评论 -
BZOJ2156
BZOJ 2156 题目 BZOJ2156 分析 题目题面有点问题:样例应该是 3 30 1 11 2 20 2 13012 3 \,3 \\ 0 \,1 \,1\\ 1 \,2 \,2\\ 0 ...原创 2019-08-03 13:31:19 · 115 阅读 · 0 评论 -
BZOJ1607
BZOJ 1607 题目 BZOJ1607 分析 本题可以暴力的去找每个数的因子,看一下它的因子在序列的出现的次数,再做统计。时间复杂度:O(n×m)O(n \times \sqrt{m})O(n×m) 洛谷上 ACACAC BZOJBZOJBZOJ 老爷机上就 TLETLETLE 了。 变换思路: 类似埃氏筛的方法,统计数的倍数出现的次数。注意:去除自己本身的答案。 代码 ...原创 2019-07-13 21:09:56 · 122 阅读 · 0 评论