学习
naygnay
这个作者很懒,什么都没留下…
展开
-
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 · 102 阅读 · 0 评论 -
数论分块与求和计算公式
分两种,一种是纯公式推导化简成f(i) = g(i) + t(i)∑n/i的式子 除求和外其他式子能在O(1)的时间内求出来然后分块计算即可另一种是使用分块思想一般是枚举约数,按照限制条件按块计算原创 2020-07-16 10:22:27 · 492 阅读 · 0 评论 -
2020.7.11 --莫队算法(待补)
普通莫队带修莫队树上莫队树上带修莫队原创 2020-07-13 20:39:05 · 111 阅读 · 1 评论 -
7月计划
1. vj专题2. 按知识点训练简单dp简单算法:二分,贪心,前缀和,差分图与树的处理, bfs&&dfs字符串hash,后缀数组数据结构:线段树, stl的优先队列, 单调队列数论原创 2020-07-13 20:26:49 · 86 阅读 · 1 评论 -
2020.7.3 --杂记
dp:枚举+01背包,先枚举最后未包含的 然后总容量减去前面的和 对剩下的物品01背包计算https://vjudge.net/contest/380962#problem/A概率 dp,分4种情况https://vjudge.net/contest/380962#problem/Bdp 最大0矩阵https://vjudge.net/contest/380962#problem/Idp 统计合格子序列统计余数即可判断是否能整除某个数, dp向后一位时也只需考虑余数https原创 2020-07-13 20:25:52 · 124 阅读 · 0 评论 -
2020 7.12 -- 7.13 两场牛客多校 + 两场 unrated的cf的补题
自闭ing之后的多校就不打了…太难了吧…原创 2020-07-13 20:25:18 · 210 阅读 · 0 评论 -
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 · 114 阅读 · 0 评论 -
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 · 137 阅读 · 0 评论 -
2020.7.7 --(挖坑)数据结构
数据结构单调栈:原创 2020-07-10 15:04:45 · 98 阅读 · 0 评论 -
2020.7.10 --根据递推公式构造系数矩阵用于快速幂
现在水平不够,挖个坑…以后再看https://blog.csdn.net/u012061345/article/details/52224623原创 2020-07-10 15:04:19 · 113 阅读 · 0 评论 -
2020.7.4 -- BSGS算法
数论BSGS算法:求解 满足 a^x = b (mod p) 的最小自然数x原创 2020-07-06 14:49:47 · 121 阅读 · 0 评论 -
2020.7.5 -- Miller-Rabin素数测试算法与费马定理,二次探测定理的证明
Miller-Rabin素数测试算法前置技能:1: 费马定理2: 二次探测定理原创 2020-07-06 14:47:15 · 225 阅读 · 0 评论 -
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_backconst int RhoLimit = 10000; //最大循环,防止死掉const int Rhoc = 12; //随机数产生用的常数vector<ll> Fac;//gc原创 2020-07-06 14:44:26 · 170 阅读 · 0 评论 -
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)均为02:ai<x,无论怎么放F(x)因子均是i,即F(x) = F(X)i3:其他情况,放ai的方案数为x+i-ai,F(x) = F(X)(x-i-ai)注意转换问题为几何角度...原创 2020-07-03 01:04:13 · 169 阅读 · 0 评论 -
离散化
在一些问题上经常会出现一段很长的数轴,上面只有少数的几个点,同时我们只关注这些点的大小关系而不关注点本身的数值这时离散化就很有帮助离散化分两类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 · 112 阅读 · 0 评论 -
hash处理相同前缀后缀
hash处理字符串获得相同前缀后缀#define ull unsigned long longconst ll maxn = 1e5 + 7;int id(char c){ return c - 'a' + 1;}vector<int> idx; //存储前缀后缀相同的前缀结束的iconst int p = 233;void hash_pre_ans_tail(string s){ ull pre = 1, tail = 1, q = 1; for .原创 2020-05-13 19:27:44 · 313 阅读 · 0 评论 -
牛牛的揠苗助长
一眼二分分天数,然后就是要找合适的高度满足操作数小于天数两种方法:二分的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 · 159 阅读 · 0 评论 -
环形石子归并
环形石子归并题目链接先分享下我写这个题目的过程首先,没读懂题目…因为就是一个链式的归并,然后,很明显…测试样例最小是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 · 151 阅读 · 0 评论 -
KNN算法实例(随机点分类可视化+图片数字预测)
KNN算法随机点分类可视化KNN算法:本蒟蒻刚开始学习机器学习,定义这种事还是交给大佬吧这个博客写的也不错https://www.cnblogs.com/listenfwind/p/10311496.html先简单来个例子:我们想随机取几个点成两份,然后在随机取个点判断这个点最可能属于这两份的哪一个.可视化就交给matplotlib库来做,介绍这个库的博客https://ww...原创 2020-04-06 19:26:54 · 2100 阅读 · 0 评论 -
洛谷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 · 209 阅读 · 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 · 100 阅读 · 0 评论 -
冲冲冲
2020.2.27 / 中国剩余定理,gcd非常好的一个博客:https://blog.csdn.net/acdreamers/article/details/8050018gcd:https://vjudge.net/contest/353627#problem/A#include <bits/stdc++.h>using namespace std;int ma...原创 2020-02-27 22:12:54 · 194 阅读 · 1 评论