OI图论 简单学习笔记】的更多相关文章

网络流另开了一个专题,所以在这里就不详细叙述了. 图 一般表示为\(G=(V,E)\),V表示点集,E表示边集 定义图G为简单图,当且仅当图G没有重边和自环. 对于图G=(V,E)和图G2=(V2,E2) ,若V2是V的子集,E2是E的子集,那么图G2是图G的子图. 拓扑排序问题 对于有向图,如果不存在环,则称为有向无环图,缩写为DAG. 拓扑排序是对DAG找出一个点的序列,使得如果x->y,那么x在序列中在y的前面. 拓扑排序是非常简单的,我们初始将所有入度为0的点丢入队列中,然后进行bfs.…
基本上只是整理了一下框架,具体的学习给出了个人认为比较好的博客的链接. PART1 数论部分 最大公约数 对于正整数x,y,最大的能同时整除它们的数称为最大公约数 常用的:\(lcm(x,y)=xy\gcd(x,y)\) 裴蜀定理 定理:对于方程\(ax+by=c\),其存在解的充要条件是\(gcd(a,b)|c\),可以拓展到n元的方程. 证明的话应该自己yy一下还是很容易(显然可得),不过要是想要严谨证明还是去百度吧qwq 扩展欧几里得定理 首先我们都知道\(gcd(a,b)=gcd(b,a…
持续更新! 基本上只是整理了一下框架,具体的学习给出了个人认为比较好的博客的链接. ..怎么说呢,最基础的模板我就我不说了吧qwq,具体可以参考一下这位大佬写的博客:最大流,最小割,费用流 费用流 跑最大费用流的时候可以把边权都变成负的,然后按照原先的方法跑最小费用流即可. 每个点只能经过一次的时候,就拆点,然后两个点之间连容量为1费用为0的边.连路径的时候,强制从v'向u连边. 经典费用流模型 连续M个元素最多选K个 给你N个元素,每个元素都有一个权值ai(可正可负),要求从中你选出一些,满足…
学习平面几何,首先我们要会熟练地应用向量,其次也要知道一些基本的几何知识.(其实看看数学课本就可以了吧) 因为是看的蓝书,所以很多东西做了引用.(update:还参考了赵和旭dalao的讲义) 下面先介绍一些常用的操作: 点的定义 struct point { double x,y; point(double x=0,double y=0):x(x),y(y){} }; 向量的定义 typedef point vec 值的判断 inline int dcmp(double x) { if(fab…
咕咕咕 先开个坑(其实是存模板来了) 一些特别简单的前置东西qwq 复数的计算 复数相加:向量相加,复数相乘.复数相乘:模长相乘,旋转量相加(就是复平面坐标轴逆时针旋转的角度) (当然也可以直接使用complex类,.real()即取实数部分) 单位根 主n次单位根:\(w_n=e^{2\pi i/n}\) n个n次单位复数根可以用\(w_n^0,w_n^1,...,w_n^{n-1}\) 性质 n次单位根的次幂还是n次单位根 \(w_n^n=1\),n为偶数时\(w_n^{n/2}=-1\)…
持续更新qwq KMP 其实是MP啦qwq 就是先自己匹配自己得到状态图,然后再在上面进行模式串的匹配. nxt数组返回的是以该节点结尾的,最长的,在前面出现过的,不相交的,字符串的最靠右的,末位位置. 举个例子:对于字符串aabaabaabaab来说,它的nxt数组是这个样子的-- nxt[0]=0,nxt[1]=0,nxt[2]=1,nxt[3]=0,nxt[4]=1,nxt[5]=2,nxt[6]=3,nxt[7]=4,nxt[8]=5,nxt[9]=6,nxt[10]=7,nxt[11]…
log4j结构图: 结构图展现出了log4j的主结构.logger:表示记录器,即数据来源:appender:输出源,即输出方式(如:控制台.文件...)layout:输出布局 Logger机滤器:常用级别的划分:Debug,Info,Warn,Error,Fatal这5个级别由低到高,如果配置的级别为"INFO"那么"Debug"级别的信息则不会显示"依次类推. 示例代码: @Test public void testLevel() { log.debu…
Linux帮助命令简单学习笔记: 一: 命令名称:man 命令英文原意:manual 命令所在路径:/usr/bin/man 执行权限:所有用户 语法:man [命令或配置文件] 功能描述:获得帮助信息 范例: $ man ls 查看ls命令的帮助信息 $ man services 查看配置文件services的帮助信息 man 1 默认命令 5配置文件 二: 指令名称:info 指令英文原义:information 指令所在路径:/usr/bin/info 执行权限:All User 语法:i…
0. 内容为个人学习笔记, 仅供参考, 如有错漏, 欢迎指正! 1. STL中的所有组件都是由模板构成的, 所以其元素可以是任意型别的. 组件有: - 容器: 管理某类对象的集合. 不同的容器有各自的优缺点. - 迭代器: 用来在一个对象集群(Collection of Objects) 的元素上进行遍历. 这个CoB可以是容器/容器的一部分. 每种容器都提供了自己的迭代器. - 算法(Algorithm): 用来处理集群内的元素(比如: 查询,修改,排序等). - 适配器(adapter) -…
持续更新!! DP的难点主要分为两类,一类以状态设计为难点,一类以转移的优化为难点. DP的类型 序列DP [例题]BZOJ2298 problem a 数位DP 常用来统计或者查找一个区间满足条件的数,然后按数位顺序DO,一般需要仔细分情况讨论,常见处理如把区间拆为\([1,l),[1,r]\),记忆化,预处理等. [例题]BZOJ3131 淘金 概率DP 概率DP是对一类求时间概率或者期望概率DP的总称. 对于求概率问题,有时利用补集转化,有时将其转化为计数问题.求期望大多利用期望的线性性来…
持续更新!!! [例题]简单题(K-D tree) 题目链接 线段树 [例题](环上最大连续和) 给定一个长度为n的环形序列A,其中A1与A_n是相临的,现在有q次修改操作,每次操作会更改其中一个数,请对于每次修改输出修改后的最大连续和. 题目链接:POJ2750 [例题]给定一个长度为n的序列,可以修改任意个数字使其变成原来的相反数,求最小的逆序对数. 左偏树 [例题]派遣 题目链接 左偏树是一种具有左偏性质的堆有序二叉树(这里要注意,堆有序二叉树和二叉堆并不是同一种东西,因此左偏树并不是堆)…
判断链 每个点的度数不超过2 判断树 n个点,n-1条边 每两个点之间的路径唯一 多叉树转换成二叉树 第一个孩子作为左孩子,第一个孩子的兄弟作为它的右孩子. 树的重心 树上一点,满足删除该点时,树内剩下的子树最大节点数最小. 性质 1.树的重心每棵子树的大小一定小于等于\(n/2\) 2.每颗子树的大小都小于等于\(n/2\)的点一定是这棵树的重心(就是上一个的逆定理) 3.树中所有点到某个点的距离和中,到重心的距离和最小(如果有两个重心,他们的距离一样) 证明:我们考虑使用调整法,设当前最优决…
1.1 名词解释 Schema : 一种以文件形式存储的数据库模型骨架,不具备数据库的操作能力 Model : 由Schema发布生成的模型,具有抽象属性和行为的数据库操作对 Entity : 由Model创建的实体,他的操作也会影响数据库 注意: 1.本学习文档采用严格命名方式来区别不同对象,例如: var PersonSchema; //Person的文本属性 var PersonModel; //Person的数据库模型 var PersonEntity; //Person实体 2.Sch…
本人是看的lamp兄弟连的视频,学习的知识做一下简单,如有错误尽情拍砖. 命令补齐 命令补齐允许用户输入文件名起始的若干个字 母后,按<Tab>键补齐文件名. 命令历史 命令历史允许用户浏览先前输入的命令并重新 调用它们,用history命令可以显示命令列表, 按方向键↑和↓可查找以前执行过的命令. 别名: 命令别名定义: 范例: alias copy=cp alias xrm= “rm -r ” 如果有参数就要加双引号 查看别名信息:alias 删除别名:unalias copy 输入/输出…
创建用户 CREATE USER username identified by password;//这是最简单的用户创建SQL语句. CREATE USER username identified by password default tablespace users temporary tablespace temp;//增加指定表空间的SQL语句. 分配用户权限 grant 权限/角色 to 用户;//把权限或角色的权限 分配给 用户. revoke 权限/角色 from 用户;//收回…
Linux中的是那种软件包:  (这里学习是基于redHat的Cent-OS) 1: 二进制软件包管理(RPM.YUM) 2:源代码包安装 3: 脚本安装(Shell或Java脚本) 一: 二进制软件包: RPM包管理: RPM软件包的一个例子:  sudo-1.7.2p1-5.el5.i386.rpm 其中包括软件名(sudo),版本号(1.7.2pl),发行号(5.el5),和硬件平台(i386). (1)  卸载 : # rpm -e sudo   注意:如果其它软件包有依赖关系,卸载时会…
Vim/Vi是一个功能强大的全屏幕文本编辑器,是Linux/UNIX上最常用的文本编辑器,它的作用是建立.编辑.显示文本文件.Vim/Vi 没有菜单,只有命令. 早前也用过Vim变过C++/C的代码,后来一不用,命令全都忘了,本来就没记多少.这里给出基本的一些操作指令,算是方便以后查看吧.本人是小白.......处于学习阶段.大神勿喷..... 主要的就是vim的三种工作模式: 插入命令: a 在光标后附加文本 A 在本行行末附加文本 i 在光标前插入文本 I 在本行开始插入文本 o 在光标下插…
java_study笔记 前言: 所有笔记均总结自狂神的java基础视频 https://www.bilibili.com/video/BV12J41137hu?p=1 idea小技巧 psvm+回车直接给一个main方法 ctrl+d复制当前行到下一行 sout+回车直接输出 输入的时候 new Scanner(System.in); 然后alt+回车 100.for 直接生成一个for循环 数组名.for自动生成一个for-each循环 alt+insert生成构造器 同样也可以生成get/…
HTTP是hypertext transfer protocol(超文本传输协议)的简写,它是TCP/IP协议的一个应用层协议,用于定义WEB浏览器与WEB服务器之间交换数据的过程. 在HTTP1.0协议中,客户端与web服务器建立连接后,只能获得一个web资源. HTTP1.1协议,允许客户端与web服务器建立连接后,在一个连接上获取多个web资源. 我们可以通过使用telnet举例说明   一个好多同学搞不清楚的问题: 一个web页面中,使用img标签引用了三幅图片,当客户端访问服务器中的这…
1.CSS的简介 *css :层叠样式表 **层叠: 一层一层. **样式表: 具有大量的属性和属性值 *使得页面的显示效果更加好. *css将网页内容和显示样式进行分离,提高了显示功能. *css不能单独存在,依赖于html 2.css和html 的结合(一共有四种方式) (1)在每个html标签中都有一个属性 style ,把css和html结合在一起. --<div style="background-color:red;color:green;"> --设置了本句语…
1.Html简介 1)什么是html: HyperText Markup Language:超文本标记语言,网页语言. >超文本:超出文本范围. >标记: html中所有的操作都是使用标记实现的,标记就是标签,<标签名> >网页语言: 2)创建文件: >我们创建一个java文件,后缀名为.java 通过编译,然后使用jvm运行 >html后缀是:.html,.htm 直接使用浏览器运行 >html代码示例: 这是我的<font size="5…
计划任务: 为什么要设置计划任务 : 实现数据库备份,发送系统通知神马的..... 计划任务的命令: 一: at :  安排作业在某一时刻执行一次 nbatch    安排作业在系统负载不重时执 行一次 cron : 安排周期性运行的作业 at命令的功能和格式: 功能:安排一个或多个命令在指定的时间运行一次 at的命令格式及参数: at [-f 文件名] 时间  at -d  or atrm  删除队列中的任务  at -l  or atq  查看队列中的任务 at命令指定时间的方式: 绝对计时…
主要讲两个用户管理的案例: 1: 限制用户su为root,只允许某个组的的用户su # groupadd sugroup 首先添加我们的用户组 # chmod 4550 /bin/su 改变命令的权限 # chgrp sugroup /bin/su 改变命令的所属组 # ls -l /bin/su 查看命令的权限 -r-sr-x--- 1 root sugroup 18360 Jan 15 2010 /bin/su 设定后,只有sugroup组中的用户可以使用su切换为root # userad…
用户组管理命令: groupadd -g 888 webadmin 创建用户组webadmin,其GID为888 删除用户组: groupdel 组名 修改用户组信息 groupmod groupmod -n apache webadmin 修改webadmin组名为apache gpasswd  设置组密码及管理组内成员: -a 添加用户到用户组 -d 从用户组中删除用户 -A 设置用户组管理员 -r 删除用户组密码 -R 禁止用户切换为该组 groups 查看用户隶属于哪些用户组 newgr…
其实如果我们了解了Linux中用户管理的配置文件之后,完全可以手工管理用户: 添加用户: useradd 设置选项 用户名 -D 查看缺省参数 u:UID g:缺省所属用户组GID G:指定用户所属多个组 d:宿主目录 s:命令解释器Shell c:描述信息 e:指定用户失效时间 删除用户: userdel -r 用户名 -r:删除用户目录 手工删除: 使用find命令查找属于某个用户或用户组的文件 find选项-user.-uid.-group.-gid 1.对需要保留的文件进行移动和备份 2…
Linux用户分为三种: 1:超级用户(root,UID=0) 2:普通用户(UID 500-60000) 3:伪用户(UID 1-499)  伪用户: 1.伪用户与系统和程序服务相关 :nbin.daemon.shutdown.halt等,任何Linux系统默认都有这些伪用户 mail.news.games.apache.ftp.mysql及sshd等,与Linux 系统的进程相关 2.伪用户通常不需要或无法登录系统 3.可以没有宿主目录 用户组: 每个用户都至少属于一个用户组 每个用户组可以…
GRUB的配置文件默认为  :/boot/grub/grub.conf # ls -l /etc/grub.conf GRUB配置选项: default定义缺省启动系统 timeout定义缺省等待时间 splashimage定义GURB界面图片 hiddenmenu隐藏菜单 title定义菜单项名称 root设置GRUB的根设备即内核所在的分区 kernel定义内核文件所在位置 initrd命令加载镜像文件 GRUB命令: e: 编辑当前的启动菜单项 c: 进入GRUB的命令行方式 b: 启动当…
关机: 命令名称:shutdown 命令所在路径:/usr/sbin/shutdown 执行权限:root 语法:shutdown 功能描述:关机 范例:# shutdown -h now 重启: 命令名称:reboot 命令所在路径:/usr/sbin/reboot 执行权限:root 语法:reboot 功能描述:重启系统 范例:# reboot 真正linux作为服务器时,其实开关机很少使用的..…
中国剩余定理CRT 中国剩余定理是要求我们解决这样的一类问题: \[\begin{cases}x\equiv a_1\pmod {b_1} \\x\equiv a_2 \pmod{b_2}\\...\\x\equiv a_n\pmod{b_n} \end{cases}\] 其中\(b_1,b_2,...,b_n\)互质. 我们先令\(m=\prod_{i=1}^{n}b_i,w_i=m/b_i\) 那么有\(gcd(m,w_i)==1\) 我们对于\(w_ix'+my'= 1\)解出来\(x',…
1.最开始系统上电后 ENTRY(_start)程序入口点是 _start  由board/ap121/u-boot.lds引导 2._start: cpu/mips/start.S 是第一个源程序文件,主要完成初始化看门狗.定时器.重定位(拷贝代码段到内存中).初始化堆  栈.  跳转到第二阶段等工作. 3. la t9, board_init_f 将函数board_init_f地址赋予t9j t9 跳转到t9寄存器中保存的地址指向的指令即跳转到RAM 中执行 C 代码这里会打印一些信息. 3…