- 博客(29)
- 收藏
- 关注
原创 2018-2019 ACM-ICPC, Asia Jiaozuo Regional Contest
2018-2019 ACM-ICPC, Asia Jiaozuo Regional Contest https://codeforces.com/gym/102028 2020-12-11 --时间 A. 签到 const int maxn = 1e5 + 7; int t, n; char s[10][1000] = {"Typically Otaku", "Eye-opener", "Young Traveller", "Exc..
2020-12-11 14:26:35
421
1
原创 AtCoder ARC #108 : D - AB
问题 题目 在初始状态下,有一个字符串"AB",执行以下过程,直到此字符串的长度为 N。 按此顺序选择字符 x 和 y 的相邻位置,然后插入字符 C[x] [y]。 最终可能的字符串数量是多少? 暴力打表找规律,考虑C[x][y]的不同取值 打表代码 #include "bits/stdc++.h" using namespace std; #define fi first #define se second #define pb push_back #define es erase #defin
2020-11-30 18:41:19
434
原创 树上启发式合并
树上启发式合并 解决树上统计问题,O(n∗log(n))O(n*log(n))O(n∗log(n)),可以结合线段树等数据结构维护深度上的信息 博客 入门题 const int maxn = 1e5 + 7; const int mod = 1e9 + 7; ll n, m, u, v, mx, sum; vector<int> mp[maxn]; int sz[maxn], son[maxn]; void dfs(int u, int fa) { sz[u] = 1; .
2020-11-29 20:17:57
230
原创 2020-2021 ACM-ICPC Brazil Subregional Programming Contest A. Sticker Album
期望dp https://codeforces.com/gym/102861/problem/A 大小为n的背包,无限个物品随机在[a,b][a,b][a,b]之间,计算E(n),E(n)表示随机选择物品,填满背包需要的期望物品数量 tip1: 普通期望dp是n*(b-a+1)的复杂度, 观察dp公式可以发现可以用滑块保存下一个状态 dp[i]=1l∗dp[i−a]+1l∗dp[i−a+1]+⋯+1l∗dp[i−b]+1dp[i] = \frac{1}{l} * dp[i-a] + \fra.
2020-11-29 20:03:56
998
原创 Codeforces Round #665 (Div. 2) -- D. Maximum Distributed Tree
前置知识 a. 树上的任意一条边,在计算所有点之间的距离之和时,计算次数为去掉这个边之后断开的两部分树的大小的积 b. 排序不等式 题意 给你一棵树,分配边权,使所有点之间的距离之和最大 思路 先算出所有边在计算时计算的次数,按排序不等式的规律和边权作积即可 难点在于,讨论 mmm 和 n−1n-1n−1 的大小关系 m<=n−1m<=n-1m<=n−1时比较好考虑,不够的用 111 填充 m>n−1m>n-1m>n−1 时,可以猜想,将前面多出来的部分乘到最
2020-08-22 09:07:21
268
原创 网络流入门 -- 2020.7.20 - 2020.7.25
模板 Dinic 还真是,这个算法不用太懂…直接add然后run就行,难点在建图 板子放最后 POJ 1149 PIGS 多源多汇 , 因为猪在猪圈里可以随意更改,所以对每一个猪圈,有一个人拿了出来之后,能转交给其他所有有这个钥匙的人任意数量的猪,最后所有人连上汇点,权重为这个人的需求即可 HDU 3416 Marriage Match IV (Dijkstra+最大流) 从S到T的最短路数量 //vector存边,queue操作较慢 const ll inf = 0x3f3f3f3f; c
2020-07-26 11:38:57
342
2
原创 Codeforces Round #632 (Div. 2) C. Eugene and an array
题目链接 分步分析: 1:区间[i,j]和为0 可以得到:sum[i]=sum[j] 2:如果一个区间[i,j]和为0那么从j+1开始才存在good区间 3:用last记录上一个可以包含的左端,那么每次加上i-last,遍历完就是答案 #include <iostream> #include <vector> #include <cassert> #includ...
2020-07-16 16:11:29
171
原创 数论分块与求和计算公式
分两种,一种是纯公式推导 化简成f(i) = g(i) + t(i)∑n/i的式子 除求和外其他式子能在O(1)的时间内求出来 然后分块计算即可 另一种是使用分块思想 一般是枚举约数,按照限制条件按块计算
2020-07-16 10:22:27
666
原创 2020.7.15 --差分
两道经典题目 差分,前缀和的逆操作 可以在m次区间+ - 修改后,O(n)的得到所有的值 P4552 IncDec Sequence
2020-07-15 00:37:51
209
2
原创 7月计划
1. vj专题 2. 按知识点训练 简单dp 简单算法:二分,贪心,前缀和,差分 图与树的处理, bfs&&dfs 字符串hash,后缀数组 数据结构:线段树, stl的优先队列, 单调队列 数论
2020-07-13 20:26:49
148
1
原创 2020.7.3 --杂记
dp: 枚举+01背包,先枚举最后未包含的 然后总容量减去前面的和 对剩下的物品01背包计算 https://vjudge.net/contest/380962#problem/A 概率 dp,分4种情况 https://vjudge.net/contest/380962#problem/B dp 最大0矩阵 https://vjudge.net/contest/380962#problem/I dp 统计合格子序列 统计余数即可判断是否能整除某个数, dp向后一位时也只需考虑余数 https
2020-07-13 20:25:52
181
原创 2020.7.13 --卡特兰数
树屋阶梯 枚举左下角的每个状态,就会发现这个式子: h(n)= h(0) * h(n-1) + h(1) * h(n-2) + … + h(n-1) * h(0) (n>=2) 还有其他的样子: h(n)=h(n-1) * (4 * n-2)/(n+1); h(n)=c(2n,n)-c(2n,n-1)(n=0,1,2,…) 有时候不取mod的时候数据会很大,可以用python解 ...
2020-07-13 20:22:36
180
原创 2020.7.8 --素数线性筛,欧拉函数模板
素数线性筛 const int maxn = 2e7; int n, m, prime[maxn], isnt_prime[maxn],tot; void get_prime(int n) { isnt_prime[0] = isnt_prime[1] = 1; for (int i = 2; i <= n; ++i) { //当前数是所有数小于n的数而不只是素数,这是欧拉筛与埃氏筛的区别 if (!isnt_prime[i]) pr
2020-07-10 15:08:20
208
原创 2020.7.10 --根据递推公式构造系数矩阵用于快速幂
现在水平不够,挖个坑…以后再看 https://blog.youkuaiyun.com/u012061345/article/details/52224623
2020-07-10 15:04:19
184
原创 2020.7.5 -- Miller-Rabin素数测试算法与费马定理,二次探测定理的证明
Miller-Rabin素数测试算法 前置技能: 1: 费马定理 2: 二次探测定理
2020-07-06 14:47:15
327
原创 2020.7.6 -- Miller_Rabin和Pollard_Rho算法
Miller_Rabin和Pollard_Rho算法 — 模板 自用模板 #include "bits/stdc++.h" using namespace std; #define ll long long #define ull unsigned ll #define pb push_back const int RhoLimit = 10000; //最大循环,防止死掉 const int Rhoc = 12; //随机数产生用的常数 vector<ll> Fac; //gc
2020-07-06 14:44:26
245
原创 Codeforces Round #654 (Div. 2) E1. Asterism (Easy Version)
E1. Asterism (Easy Version) 要判断每个x是否合法就要计算每个F(x) 先for枚举x再计算F(x) 计算F(x)的方法: 从大到小放ai,分三种情况得到F(x)的因子,分三种情况 1:ai>=x+i,无论怎么放,F(x)均为0 2:ai<x,无论怎么放F(x)因子均是i,即F(x) = F(X)i 3:其他情况,放ai的方案数为x+i-ai,F(x) = F(X)(x-i-ai) 注意转换问题为几何角度 ...
2020-07-03 01:04:13
256
原创 离散化
在一些问题上经常会出现一段很长的数轴,上面只有少数的几个点,同时我们只关注这些点的大小关系而不关注点本身的数值 这时离散化就很有帮助 离散化分两类 1:同时关注数值和数值出现的位置 这种离散化类似于排序pair,first优先,second其次 struct node { int x, id; }s[1010]; int r[1010]; bool cmp(node a, node b){ return a.x < b.x; } int main() { int n; cin >>
2020-06-15 13:41:49
182
原创 hash处理相同前缀后缀
hash处理字符串获得相同前缀后缀 #define ull unsigned long long const ll maxn = 1e5 + 7; int id(char c) { return c - 'a' + 1; } vector<int> idx; //存储前缀后缀相同的前缀结束的i const int p = 233; void hash_pre_ans_tail(string s) { ull pre = 1, tail = 1, q = 1; for .
2020-05-13 19:27:44
447
原创 牛牛的揠苗助长
一眼二分分天数,然后就是要找合适的高度满足操作数小于天数 两种方法: 二分的check函数里面三分高度,我们可以发现高度关于操作数是一个凹函数. 要注意临界值 #include <bits/stdc++.h> using namespace std; typedef long long ll; const int maxn = 1e5 + 7; ll a[maxn], n; ll cheak3(ll x) { ll ans = 0; for (int i = 1; i <
2020-05-08 22:23:01
287
原创 环形石子归并
环形石子归并 题目链接 先分享下我写这个题目的过程 首先,没读懂题目…因为就是一个链式的归并,然后,很明显… 测试样例最小是44… 然后就看题解嘛,然鹅并不能看懂 … 不过我自己就有了一个新的想法 我的想法: 众所周知: 链式石子dp的递推方程:f[i][j] = max(f[i][k] + f[k+1][j] + d(i,j));其中,1<=i<=<=k<j<=N...
2020-04-07 11:07:32
235
原创 KNN算法实例(随机点分类可视化+图片数字预测)
KNN算法随机点分类可视化 KNN算法: 本蒟蒻刚开始学习机器学习,定义这种事还是交给大佬吧 这个博客写的也不错 https://www.cnblogs.com/listenfwind/p/10311496.html 先简单来个例子: 我们想随机取几个点成两份,然后在随机取个点判断这个点最可能属于这两份的哪一个. 可视化就交给matplotlib库来做,介绍这个库的博客 https://ww...
2020-04-06 19:26:54
2306
原创 洛谷dp记录
洛谷dp记录 线性dp,分开处理数据 https://www.luogu.com.cn/problem/P1095 #include <bits/stdc++.h> using namespace std; const int N = 300010; int m, s, t, dp[N], dpt[N]; //分开计算跑步还是等待 int main() { cin >...
2020-04-06 18:12:21
358
1
原创 博客收集
数论: https://www.cnblogs.com/czc1999/p/11669088.html 素数 https://www.cnblogs.com/czc1999/p/11681996.html 快速幂 宝藏博主: https://www.cnblogs.com/czc1999/default.html?page=1
2020-03-13 16:57:04
163
原创 冲冲冲
2020.2.27 / 中国剩余定理,gcd 非常好的一个博客: https://blog.youkuaiyun.com/acdreamers/article/details/8050018 gcd: https://vjudge.net/contest/353627#problem/A #include <bits/stdc++.h> using namespace std; int ma...
2020-02-27 22:12:54
288
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅