noi 基础知识
shiyongyang
这个作者很懒,什么都没留下…
展开
-
关于线性基的学习与理解
1、线性基: 若干数的线性基是一组数a1,a2,...ana1,a2,...an,其中axax的最高位的11在第xx位。 通过线性基中元素xorxor出的数的值域与原来的数xorxor出数的值域相同。 2、线性基的构造法: 对每一个数pp从高位到低位扫,扫到第xx位为11时,若axax不存在,则ax=pax=p并结束此数的扫描,否则令p=pp=p转载 2017-07-28 11:25:46 · 570 阅读 · 0 评论 -
数论板子
1.gcdint gcd(int a,int b){ return b?gcd(b,a%b):a;} 2.扩展gcd )extend great common divisorll exgcd(ll l,ll r,ll &x,ll &y){ if(r==0){x=1;y=0;return l;} else { ll转载 2017-09-26 18:02:32 · 269 阅读 · 0 评论 -
frufer 序列(no look)
学了一种新姿势叫prufer数列,可以用来解一些关于无根树计数的问题。prufer数列是一种无根树的编码表示,对于一棵n个节点带编号的无根树,对应唯一一串长度为n-1的prufer编码。(1)无根树转化为prufer序列。首先定义无根树中度数为1的节点是叶子节点。找到编号最小的叶子并删除,序列中添加与之相连的节点编号,重复执行直到只剩下2个节点。如下图的树对转载 2017-09-29 09:30:35 · 195 阅读 · 0 评论 -
默慈恩金数
今天,我来讲一种比较特殊的数,可能很多人都没有听过这种数,它叫默慈金数。但事实是它早就已经进入了ACM竞赛中了。好了,接下来让我们一起来认识它,并会讲述一些它的重要应用。 在百度百科上,是这样定义默慈金数的:一个给定的数的默慈金数是在一个圆上的个点间,画出彼此不相交弦的全部方法的总数。比如为4时,方法数为9,如下图转载 2017-09-29 09:43:44 · 205 阅读 · 0 评论 -
指针
指针的概念指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。 先声明几个指针放着做例子: 例一: int *ptr; char *ptr; int **ptr; int (*pt转载 2017-10-13 07:10:00 · 167 阅读 · 0 评论 -
unique()去重函数
unique()函数是一个去重函数,STL中unique的函数 unique的功能是去除相邻的重复元素(只保留一个),还有一个容易忽视的特性是它并不真正把重复的元素删除。他是c++中的函数,所以头文件要加#include,具体用法如下:int num[100];unique(num,mun+n)返回的是num去重后的尾地址,之所以说比不真正把重复的元素删除,其实是,该函数把重复的元素一到后转载 2017-10-16 11:41:48 · 640 阅读 · 0 评论