自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

pkmq

一个OIer的博客

  • 博客(16)
  • 收藏
  • 关注

原创 [ 一些题 ]

http://www.tuicool.com/articles/mEzqeaM二分 1 Give you three sequences of numbers A, B, C, then we give you a number X. Now you need to calculate if you can find the three numbers Ai, Bj, Ck,

2020-05-03 21:18:50 282

原创 [ 冲刺NOIP2016 ] 高精度模板

包含了+ - * ^ == += *= -=这几个运算,iout用于输出高精度数#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#define rep(i,a,b) for(int i=a;i<=b;i++)#define reps(i,a,b) for(int i=a;i>=b;i--)usin

2020-05-03 21:18:41 338

原创 [ 备战NOIP2016 ] 斐波那契数列

该做法来自洛谷上的kkke,仅转载记录 *对矩阵进行优化算法 by kkke in 2015.9.12 在进行矩阵运算时,[a b],发现此题中每一步b=c恒成立,且a=b+d恒成立 [c d] 于是定义新结构 [x,y] 如:A=[a1,a2], B=[b1,b2],C=[c1,c2]; 并使 [x1,y1]*[x2,y2]=[x1*x2+y1*y2

2020-05-03 21:18:39 663

原创 [ 备战NOIP2016 ] 杂项

1.逆元:pow(x,mod-2);2.等比数列求和:Sn=ai*(pn-1)/(p-1); 除以p-1通过逆元求得。

2020-05-03 21:18:29 263

原创 [ 备战NOIP2016 ] 根据数据范围决定算法复杂度

数据范围\时间复杂度 O(n) O(n^2) O(n^3) O(n * sqrt(n)) O(nlogn) 100 1e2 √ √ √ √ √ 1000 1e3 √ √ × √ √ 10000 1e4 √ √ × √ √ 100000 1e5 √ × ×

2020-05-03 21:18:23 1092

原创 [ 冲刺NOIP2016 ] 博弈论

博弈论即判断必胜策略的问题。一. Nim游戏模型Nim模型中有两个状态: P-Previous N-Next P代表后手必胜,N代表先手必胜。 满足如下三点的模型便是Nim模型: 1.无法进行任何移动的局面是P-position 2.可以移动到P-position的局面是N-position 3.所有移动都导致N-position的局面是P-position。经典例题:

2020-05-03 21:17:52 668

原创 [ 备战NOIP2016 ] 动态规划基本模型

一、背包1. 01背包for(i=1 to n) for(j=V downto 1) f[j]=max(f[jP2837f[i][0/1]=进行到第i位,最后一只奶牛是0/1时的最小调换次数初始状态:f[0][0]=0;f[0][1]=0;f[i][0]=f[i-1][0]+(w[i]==0?0:1);f[i][1]=min(f[i-1][0]+(w[i]==1?0:1

2020-05-03 21:16:48 404

原创 [ 备战NOIP2016 ] 字符串匹配 - 哈希

哈希是个看脸的函数,如果你选的质数有问题,那可能你就会被卡n多分。主要过程:1.取一个大于字符集的素数p2.预处理出P[i]=p^i3.计算前缀hashhash[i]=hash[i-1]*p+s[i];calc(l,r) = hash[r]-hash[l-1]*P[r-l+1];问题:hash的值会非常大,ull也存不下,解决方法:1.自然溢出:ull做hash会自动对2^64取模,但是因为

2020-05-03 21:16:45 762

原创 [ 备战NOIP2016 ] 线段树

线段树1. 线段树是擅长处理区间的完美二叉树。2.线段树的每个节点都代表一段区间,如果有n个数需要修改,可以在O(logn)的时间里修改操作。一.RMQ问题(Range Min/Max Query-区间最小/大值)操作1:求a[s~e]中的最小值 。操作2:修改ai 的值。洛谷裸题:P2251①线段树RMQ以下为代码://开始时将所有值设为1<<32const int MAX_N = 1<<17,I

2020-05-03 21:16:41 452

原创 [ 备战NOIP2016 ] 数论

[DIR]1 错排公式错排公式可以通过dfs或者打表来过f(n) = (n-1) [f(n-2) + f(n-1)]2 求众数

2020-05-03 21:16:38 212

原创 位运算总结

// 第一部分 左移和右移 // << 1 << i = 2 ^ i; // 在1后面添加i个0,相当于给1乘了i个2 i << j = i * (2 ^ j); // 原理同上 // >> 1 >> i = 0 ; i >> j = i / (2 ^ j); // 巧妙的应用 i << 1 = i * 2; // 位运算的速度比i*2快 i >> 1 = i / 2; // 位运

2020-05-03 21:16:34 258

原创 最长不下降子序列

233long f[100001] = {0}, l = 1, r, m, t = 0, a;inline void BinarySearch(){ while ( l <= r ) { m = (l + r) >> 1; if ( f[m] == a ) { l = m; return; }

2020-05-03 21:16:21 198

原创 数论

最大公约数 gcd最小公倍数 lcm模法逆元欧拉函数快速幂似懂非懂1.最大公约数 gcd: gcd(a,b)=gcd(b,a%b) - a%b=0时停止递归2.最小公倍数 lcm: a*b/gcd(a,b)3.模法 (a+b)%c=(a%c+b%c)%c (a-b)%c=(a%c-b%c+c)%c (a*b)%c=(a%c)*(b%c)%c4.逆元若(b*x)

2020-05-03 21:16:17 342

原创 倍增

例子快速幂 斐波那契数列 RMQ 树上倍增RMQ 区间最值查询状态转移方程倍增LCA状态转移方程例子快速幂、 斐波那契数列、 RMQ、 树上倍增RMQ 区间最值查询*令A[i]存储我们要求最值的数列,F[i][j]表示从第i个位置开始,往后的2^j个数字中,最大的数字是什么 *我们对j从小到大枚举。每次处理.f[i][j]的时候,f[i][0~j−1]都已经处理好了 *因为j最大到logn

2020-05-03 21:16:08 744

原创 树状数组原理及模板

树状数组一 作用处理单点修改以及前缀查询特殊情况的区间修改与区间查询二 复杂度修改 Ologn查询 Ologn空间 On三 具体实现生成当ai增加x时如何修改C区间增加单点查询区间增加区间查询和树状数组:一. 作用:1. 处理单点修改以及前缀查询2. 特殊情况的区间修改与区间查询二. 复杂度修改: O(logn)查询: O(logn)空间: O(n)三. 具体实现生成C[i]=

2020-05-03 21:16:03 316

原创 图论

图论图的储存邻接矩阵邻接表最短路径floyddijkstra图论图的储存1.邻接矩阵2.邻接表struct tyc{int x,t,l,ne;} e[M];int v[N];void put (int x,int y,int l){ num++;e[num]={x,y,l,v[x]}; v[x]=num;}//枚举点x的所有出边for(int i=v[x];i;i

2020-05-03 21:15:15 406

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除