- 博客(334)
- 资源 (10)
- 收藏
- 关注
原创 SG函数模板
#include #include #define MAXN 1000 + 10 #define N 20 int f[N],SG[MAXN],S[MAXN]; void getSG(int n){ int i,j; memset(SG,0,sizeof(SG)); for(i = 1; i <= n; i++){ m
2017-11-25 01:46:13 427
原创 51nod 1031 骨牌覆盖
1031 骨牌覆盖基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题 收藏 关注在2*N的一个长方形方格中,用一个1*2的骨牌排满方格。问有多少种不同的排列方法。例如:2 * 3的方格,共有3种不同的排法。(由于方案的数量巨大,只输出 Mod 10^9 + 7 的结果)
2017-11-24 20:23:59 226
原创 51Nod 1042 数字0-9的数量
1042 数字0-9的数量基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题 收藏 关注给出一段区间a-b,统计这个区间内0-9出现的次数。比如 10-19,1出现11次(10,11,12,13,14,15,16,17,18,19,其中11包括2个1),其余数字各出现1次。I
2017-11-24 14:36:08 340
原创 AC自动机
首先简要介绍一下AC自动机:Aho-Corasick automation,该算法在1975年产生于贝尔实验室,是著名的多模匹配算法之一。一个常见的例子就是给出n个单词,再给出一段包含m个字符的文章,让你找出有多少个单词在文章里出现过。要搞懂AC自动机,先得有字典树Trie和KMP模式匹配算法的基础知识。KMP算法是单模式串的字符匹配算法,AC自动机是多模式串的字符匹配算法。
2017-11-21 22:11:09 228
原创 扩展KMP的应用
扩展KMP的应用: 给出模板串S和串T,长度分别为Slen和Tlen,要求在线性时间内,对于每个S[i](0最长公共前缀长度,记为extend[i](或者说,extend[i]为满足S[i..i+z-1]==T[0..z-1]的最大的z值)。扩展KMP可以用来解决很多字符串问题,如求一个字符串的最长回文子串和最长重复子串。https://www.61mon.
2017-11-21 22:02:54 442
原创 论文字体排版要求
毕业论文要求全部打印、装订。选用A4纸,全文一律采用宋体字,正文字号为小四号。行距为单倍行距。页边距:上下左右均为2.5厘米,装订线1厘米(局左)。 页面设置: (1)纸型:A4复印纸,方向:纵向。 (2)页边距:上:2.5厘米,下:2.5厘米,左2.5厘米,右2.5厘米 装订线位置:左端,距页边距:1.0厘米 页眉:1.5厘米,页脚:1.75厘米
2017-11-19 12:04:39 1663
原创 编译原理复习
一、词法分析1、名词解释正规表达式:正规表达式是说明单词的pattern的一种表示法(记号),是定义正规集的工具。正规文法:算符文法:即它的任一产生式的右部都不含两个相继的非终结符的文法。算符优先文法:如果G是一个不含空字符的算符文法,那么只要它的任一对终结符都只满足>,
2017-11-18 16:44:01 2788
原创 二分法模板
int n,k; const int maxn=1000; int a[maxn]; void solve() { int lb=-1,ub=n; while(ub-lb>1) { int mid=(lb+ub)/2; if(a[mid]>=k) ub=mid;
2017-11-15 21:11:49 336
原创 二分答案模板
ForwardIterlower_bound(ForwardIter first, ForwardIter last,const _Tp& val)算法返回一个非递减序列[first, last)中的第一个大于等于值val的位置。 ForwardIter upper_bound(ForwardIter first, ForwardIter last, const...
2017-11-15 21:08:24 1018
原创 51nod 1010 只包含因子2 3 5的数
1010 只包含因子2 3 5的数基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题 收藏 关注K的因子中只包含2 3 5。满足条件的前10个数是:2,3,4,5,6,8,9,10,12,15。所有这样的K组成了一个序列S,现在给出一个数n,求S中 >= 给定数的最小的数。例如:n = 13,S
2017-11-15 21:06:33 283
原创 Word排版技巧
点击打开链接# 整体布局## 页面布局 如果是新建一个Word文件,这里「页面布局」一般不用设置了:文字方向:从左到右;页边距:普通(日常使用建议用适中或窄,节约用纸,提交的论文报告什么才用普通);纸张方向:横向; 纸张大小:A4; …… 接着,在「视图」中,将「导航窗格」选上,方便不同的章
2017-11-15 13:56:59 1004
原创 C#课程设计
监视文件和文件夹的变化(FileSystemWatcher 类):选择一个文件夹,单击“开始监视”,该文件夹处于监视状态,此时对该文件夹如果进行操作,这些行为将显示出来。FileSystemWatcher类构造函数 名称说明FileSystemWatcher()
2017-11-14 16:52:50 4035
原创 设计模式简介
序号模式 & 描述包括1创建型模式这些设计模式提供了一种在创建对象的同时隐藏创建逻辑的方式,而不是使用 new 运算符直接实例化对象。这使得程序在判断针对某个给定实例需要创建哪些对象时更加灵活。工厂模式(Factory Pattern)抽象工厂模式(Abstract Factory Pattern)单例模式(Singleton Pattern)建造者模式(Build
2017-11-10 11:27:14 253
原创 莫比乌斯函数求法
一、单独求解#include using namespace std;typedef long long ll;//计算a是否可以mod bint MOD(int a,int b){ return a-a/b*b;}//计算莫比乌斯函数//如果一个数包含平方因子,那么miu(n)=0//如果哟个数不包含平方因子,且有k个不同的质因子,那么miu(n)=(-1)^k
2017-11-04 20:40:05 1535
原创 51nod 1240 莫比乌斯函数
1240 莫比乌斯函数基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注莫比乌斯函数,由德国数学家和天文学家莫比乌斯提出。梅滕斯(Mertens)首先使用μ(n)(miu(n))作为莫比乌斯函数的记号。(据说,高斯(Gauss)比莫比乌斯早三十年就曾考虑过这个函数)。具体定义如下:如果一个
2017-11-04 20:36:51 297
原创 二维曼哈顿最小生成树
所以我们只要求一个点在其45°角的区域内离他最近的点就行了,而这可以用线段树或树状数组解决我们以y轴正半轴往右偏45°角的区域为例:点j在点i的这个区域要满足的条件是:yj-xj>yi-xi且xj>xi那么我们将点以x为第一关键字,y为第二关键字,排序后倒序插入线段树线段树的线段这一维是离散后的y-x,值是y+x我们要求的是大于yi-xi的最
2017-11-04 20:18:35 546
原创 51nod 1213 二维曼哈顿距离最小生成树
1213 二维曼哈顿距离最小生成树基准时间限制:4 秒 空间限制:131072 KB 分值: 160 难度:6级算法题 收藏 关注二维平面上有N个坐标为整数的点,点x1 y1同点x2 y2之间的距离为:横纵坐标的差的绝对值之和,即:Abs(x1 - x2) + Abs(y1 - y2)(也称曼哈顿距离)。求这N个点所组成的完全图的最小生成
2017-11-04 20:17:02 874
原创 最小生成树的解法
一、Prim算法/*下标为1-n返回最小生成树的权值,返回-1说明无连通*/#define inf 0x3f3f3f3fint G[1001][1001];int vis[1001],lowc[1001];void init(int x,int y,int v){ G[x][y]=v; G[y][x]=v; return;}int prim(
2017-11-04 20:07:28 566
原创 51nod 1212 无向图最小生成树
1212 无向图最小生成树基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注N个点M条边的无向连通图,每条边有一个权值,求该图的最小生成树。Input第1行:2个数N,M中间用空格分隔,N为点的数量,M为边的数量。(2 <= N <= 1000, 1 <= M <= 5
2017-11-04 19:45:59 403
原创 greater<int>()和less<int>()的使用
greater和less是头文件中定义的两个结构。下面看它们 的定义,greater和less都重载了操作符()。 // TEMPLATE STRUCT greater emplate struct greater : public binary_function { // functor for operator> bool operator()
2017-11-03 11:37:47 920
原创 51nod1183 编辑距离
1183 编辑距离基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注编辑距离,又称Levenshtein距离(也叫做Edit Distance),是指两个字串之间,由一个转成另一个所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。例如将kitten一
2017-11-03 11:24:38 418
原创 51nod 1181 质数中的质数(质数筛法)
1181 质数中的质数(质数筛法)题目来源: Sgu基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注如果一个质数,在质数列表中的编号也是质数,那么就称之为质数中的质数。例如:3 5分别是排第2和第3的质数,所以他们是质数中的质数。现在给出一个数N,求>=N的最小的质数中的质数是多少(可以考虑
2017-11-03 10:19:35 269
原创 线段树最全模板
一、模板#include#include#includeusing namespace std;#define MAXN 200010#define lson l,mid,p<<1#define rson mid+1,r,p<<1|1int sum[MAXN<<2];void pushUp(int p){ sum[p]=max(sum[p<<1],sum[p<<1
2017-11-02 15:10:47 636
原创 51nod 1174 区间中最大的数
1174 区间中最大的数基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注给出一个有N个数的序列,编号0 - N - 1。进行Q次查询,查询编号i至j的所有数中,最大的数是多少。例如: 1 7 6 3 1。i = 1, j = 3,对应的数为7 6 3,最大的数为7。(该问题也被称为RMQ问题
2017-11-02 11:46:55 286
原创 51nod 1113 矩阵快速幂
1113 矩阵快速幂基准时间限制:3 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 收藏 关注给出一个N * N的矩阵,其中的元素均为正整数。求这个矩阵的M次方。由于M次方的计算结果太大,只需要输出每个元素Mod (10^9 + 7)的结果。Input第1行:2个数N和M,中间用空格分隔
2017-11-02 11:10:31 521
原创 矩阵运算
1、矩阵乘法#include #include #include #include #include #include #include #include using namespace std;#define INF 0x3f3f3f#define pi acos(-1.0)#define MAX 1000010#define N 105struct Mat{
2017-11-02 11:08:34 606
原创 51nod 1137 矩阵乘法
1137 矩阵乘法基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注给出2个N * N的矩阵M1和M2,输出2个矩阵相乘后的结果。Input第1行:1个数N,表示矩阵的大小(2 <= N <= 100)第2 - N + 1行,每行N个数,对应M1的1行(0 <= M1
2017-11-02 10:32:00 271
原创 51nod 1135 原根
1135 原根基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注设m是正整数,a是整数,若a模m的阶等于φ(m),则称a为模m的一个原根。(其中φ(m)表示m的欧拉函数)给出1个质数P,找出P最小的原根。Input输入1个质数P(3 Output输出P最
2017-11-02 10:23:45 547
原创 QT5之2D绘图-绘制路径
在绘制一个复杂的图形的时候,如果你需要重复绘制一个这样的图形,就可以使用到QPainterPath类,然后使用QPainter::drawPath()来进行绘制。QPainterPath类为绘制操作提供了一个容器,可以用来创建图形并且重复使用。一个绘图路径就是由多个矩形、椭圆、线条或者曲线等组成的对象,一个路径可以是封闭的,例如矩形和椭圆;也可以是非封闭的,例如线条和曲线。
2017-10-31 20:27:04 2529
原创 编译原理-算符运算优先
一、概念移动规约分析法:自底向上的语法分析方法,也称为移动归约分析法。最易于实现的一种移动归约分析方法,叫做算符优先分析法,而更一般的移动归约分析方法叫做LR分析法,LR分析法可以用作许多自动的语法分析器的生成器。文法G[S] S =>αAδ且A => b则称b是句型αb δ相对于非终结符A的短语素短语与最左素短语G的句型的素短语是一个短语
2017-10-29 19:52:27 2228
原创 C plus plus sprintf用法
sprintfint sprintf ( char * str, const char * format, ... );Write formatted data to stringComposes a string with the same text that would be printed if format was used on printf, but inste
2017-10-29 13:20:24 366
原创 解决vs2015使用fopen、fprintf等函数报错的问题
解决vs2015使用fopen、fprintf等函数报错的问题出现错误提示: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help fo
2017-10-28 14:49:51 5594 2
原创 Educational Codeforces Round 31
A. Book Readingtime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputRecently Luba bought a very interesting boo
2017-10-28 10:58:28 694
原创 编译原理 LR分析(主要是LR(0)分析)
一、LR分析的基本原理1、LR分析的基本思想LR方法的基本思想就是,在规范归约的过程中,一方面要记住已移进和归约出的整个字符串,也就是说要记住历史;一方面能够根据所用的产生式的推测未来可能碰到的输入符号,也就是说能够对未来进行展望。这样,当一串貌似句柄的字符串出现在分析栈的顶部时,我们希望能够根据历史和展望以及现实的输入符号这三部分的材料,决定出现在栈顶的这一串符号是否就是我们要找的句
2017-10-27 20:36:21 13919
原创 CodeFoces Round #443(div.2)
http://codeforces.com/contest/879/A. Borya's Diagnosistime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard output
2017-10-27 10:57:25 435
原创 人工智能(七)逻辑Agent
一、逻辑逻辑是一种可以从中找出结论的形式化语言。句法(规则)用语言定义句子。语义定义句子的含义。定义一个句子的真假性。二、蕴含即一个事情逻辑上是另一个事情的必然结果:KB ╞ α知识库KB蕴含句子α,当且仅当α在所有KB为真的世界里均为真。蕴含是基于语法的句子关系。三、命题逻辑命题逻辑是
2017-10-26 13:01:43 3076
原创 C# System.IO 文件流输入输出
一、读写文本文件可以用fileStream来读写文本文件,但是FileStream是通过字节形式来读写数据的,要把字节数据转换为文本,要自己处理编码转换。对于文本文件的读写,通常用 StreamReader类和 StreamWriter类更方便。其底层是通过FileStream实现读写文本文件的。1、构造函数Public StreamReader(strin
2017-10-25 16:24:45 11692
原创 正则表达式
正则表达式:用某种模式去匹配指定字符串的一种字符串表示方式。• 正则表达式由普通字符和元字符组成。“Hi:\d+\s*Lo:\d+”• 普通字符:Hi :• 元字符:• 匹配字符: \d \s• 重复字符: + * \d{3}• 位置字符: ^ ^\d{3}• 转义字符: \{正则表达式
2017-10-25 16:15:44 222
原创 欧拉函数模板
1、直接求欧拉函数,返回N的欧拉函数值#include using namespace std;int euler(int n){ int res=n,a=n; for(int i=2;i*i<=a;i++) { if(a%i==0) { res=res/i*(i-1);//先进行除法是为了防止溢
2017-10-25 13:44:17 705
原创 51nod 1136 欧拉函数
1136 欧拉函数基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注对正整数n,欧拉函数是少于或等于n的数中与n互质的数的数目。此函数以其首名研究者欧拉命名,它又称为Euler's totient function、φ函数、欧拉商数等。例如:φ(8) = 4(Phi(8) = 4),因为1,3,5,7
2017-10-25 13:36:08 561
算符优先文法
2017-11-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人