HAOI2019(普及)t2---馨瑶相遇

瑶馨相遇(2019t2.c/cpp/pas) 众所周知,现代初中生是很有礼貌的社交型学生:每当两个初中生分离后又相遇的时候,它们用“你好!”友好地相互打招呼,馨馨和她的朋友瑶瑶在学校的校园里的一条长长的羊肠小路上散步。 为了便于理解,我们可以把这条羊肠小路看作是一个:一维数轴。 馨馨和瑶瑶都...

2019-04-10 15:27:51

阅读数 121

评论数 0

KMP算法(转载)

首先我们来看一个例子,现在有两个字符串A和B,问你在A中是否有B,有几个?为了方便叙述,我们先给定两个字符串的值 A="abcaabababaa" B="abab" 那么普通的匹配是怎么操作的呢? 当然就是一位一位地比啦。(下...

2019-02-13 10:26:14

阅读数 32

评论数 0

KMP算法详解

(转载)详解KMP算法 KMP算法应该是每一本《数据结构》书都会讲的,算是知名度最高的算法之一了,但很可惜,我大二那年压根就没看懂过~~~ 之后也在很多地方也都经常看到讲解KMP算法的文章,看久了好像也知道是怎么一回事,但总感觉有些地方自己还是没有完全懂明白。这两天花了点时间总结一下,有点小体...

2018-11-01 08:37:41

阅读数 40

评论数 0

HAOI2015普及组试题

【第 1 题】单数还是双数(t1.c/cpp/pas)馨馨那个残酷的老师搞了一个有 N (1 <= N <= 100) 个正整数 I (1 <= I <= 10^60)的表叫馨馨去判断“奇偶性”(这个词语意思向...

2018-04-03 15:17:38

阅读数 182

评论数 0

生成回文数

Description若一个数(首位不为零)从左向右读与从右向左读都一样,我们就将其称之为回文数。 例如:给定一个10进制数56,将56加65(即把56从右向左读),得到121是一个回文数。 又如:对于10进制数87: STEP1:87+78 = 165 STEP2:165+561 = 726 S...

2018-03-29 08:54:33

阅读数 259

评论数 0

NOIP复赛复习(十五)动态规划巩固与提高

经典例题:数字金字塔(Luogu 1216)  写一个程序来查找从最高点到底部任意处结束的路径,使路径经过数字的和最大。每一步可以走到左下方的点也可以到达右下方的点。 我们现在这里讨论搜索如何实现:  状态:目前在第x行第y列  行动:向左走,向右走  ...

2017-11-21 14:39:01

阅读数 398

评论数 0

NOIP复赛复习(十四)字符串算法巩固与提高

一、Trie树   1.定义: 通过字符串建成一棵树,这棵树的节点个数一定是最少的。例如:4个字符串"ab","abc","bd","dda"对应的trie树如下: 其中红色节点表示存在...

2017-11-20 15:52:25

阅读数 222

评论数 0

NOIP复赛复习(十三)图论算法巩固与提高

一、图的存储   1、邻接矩阵   假设有n个节点,建立一个n×n的矩阵,第i号节点能到达第j号节点就将[i][j]标记为1(有权值标记为权值),  样例如下图:   /*无向图,无权值*/ int a[MAXN][MAXN];//邻...

2017-11-20 15:51:01

阅读数 194

评论数 0

NOIP复赛复习(十二)数论算法巩固与提高

一、数论    1.数   整数、自然数(大于等于0的整数)、正整数(大于0的整数)、负整数、非负整数、非正整数、非零整数、奇数偶数。   2.整除性   设a,b∈Z,如果存在c∈Z并且a=bc,则称b|a(b为a的因子,“|”表示“能整除”) ...

2017-11-20 15:49:00

阅读数 206

评论数 0

NOIP复赛复习(十一)基础算法巩固与提高

一、倍增算法:   定义:用f[i][j]表示从i位置出发的2j个位置的信息综合(状态) 一个小小的问题:为什么是2j而不是3j,5j,…?因为,假设为kj,整个算法的时间复杂度为(k-1)logk,当k=2时,时间复杂度最小。 这个算法的三个应用:   1.倍...

2017-11-20 15:47:03

阅读数 139

评论数 0

NOIP复赛复习(十)怎样才能拿到高分?

摘要 考场策略和程序测试是信息学竞赛中非常重要的环节,很多优秀的选手在很多比赛中总是会在这两个环节上犯下这样和那样的错误,导致得到的分数和实力不成正比,最后留下了无尽的遗憾。本文将探讨一些这两个环节上值得注意的地方,提出一些可行的方法,分享一些经验,以此希望帮助选手们在比赛中发挥水平,减少失...

2017-11-20 15:46:07

阅读数 218

评论数 0

NOIP复赛复习(九)如何设计测试数据?

有些同学参加一次信息学比赛之后,自我感觉非常不错,但是测评结果成绩却并不理想。造成这种情况的原因有多方面,但是我认为其中不可忽视的一大原因就是在写完程序之后,他们并不知道如何保证程序的正确性。在这里,我就这个问题提出一点自己的看法。 先从考试的时间分配问题讲起。很多同学觉得考试时间很充分,N...

2017-11-17 16:59:43

阅读数 1621

评论数 0

NOIP复赛复习(八)STL算法与树结构模板

STL算法 STL 算法是一些模板函数,提供了相当多的有用算法和操作,从简单如for_each(遍历)到复杂如stable_sort(稳定排序),头文件是:#include 。常用STL 算法库包括:sort快速排序算法、二分查找算法、枚举排列算法等。 1、 sort排...

2017-11-17 16:58:18

阅读数 188

评论数 0

NOIP复赛复习(七)STL容器与字符串模板

STL容器 STL 容器是一些模板类,提供了多种组织数据的常用方法。常用的STL容器包括pair(组合)、list(列表,类似于链表)、vector(向量,类似于数组)、priority_queue(优先队列)、set(集合)、map(映射)、stack(栈)等,通过模板的参数我们可以指定容...

2017-11-17 16:56:50

阅读数 137

评论数 0

NOIP复赛复习(六)算法分析与排序模板

算法分析 算法分析的目的是预测算法所需的资源,如计算时间(CPU 消耗)、内存空间(RAM 消耗)、通信时间(带宽消耗)等,以及预测算法的运行时间,即在给定输入规模时,所执行的基本操作数量,或者称为算法复杂度。 算法的运行时间取决于输入的数据特征,输入数据的规模和运行时间的上限(因为运...

2017-11-17 16:55:08

阅读数 147

评论数 0

NOIP复赛复习(五)程序对拍与图论模板

程序对拍 所谓“对拍”,顾名思义,就是让两者相互比对。所谓“两者”,一是你要测试的程序,二是一个答案在该程序在一定范围(时间/空间)内结果必定正确的程序(一般是用暴力求解的程序)。对拍一般需要造数据程序(data.exe),保证正确性的暴力对拍程序(test.exe)与测试程序(以moo.e...

2017-11-17 16:53:49

阅读数 113

评论数 0

NOIP复赛复习(四)读写外挂与高精度模板

读入输出挂 读入输出挂就是逐个字符地读入数据,从而让读入更加快速。输出挂的原理也是一样的,都是通过将输出数字变成输出字符以加快速度。当然输入输出外挂一般用在大量输入输出的情况下,这样性价比才高一些,否则得不偿失。 void Rd(int &res){     res=0;...

2017-11-17 16:52:28

阅读数 84

评论数 0

NOIP复赛复习(三)文件读写与数论模板

文件读入读出 假设题目名为“add”,那么文件夹名为“add”,c++程序名为“add.cpp”,读入文件名为“add.in”,输出文件名为“add.out”。四个的拼写均不可有误,包括大小写差异。千万不要调试后就忘记修改文件读入读出了。  #include int main()...

2017-11-17 16:45:58

阅读数 157

评论数 0

NOIP复赛复习(二)竞赛环境与注意事项

一、比赛不提供纸质试题,只提供电子版试题文件。 该文件压缩包保存在计算机桌面上。监考人公布密码后,选手自行解密试题。 试题解压密码会影响一个人的心情,一定要一次输对,注意大小写,不要边输入边检查,要对自己有自信。 二、江苏复赛选手上机可自选windows或linux操作系统。 ...

2017-11-17 16:43:27

阅读数 2558

评论数 0

NOIP复赛复习(一)常见问题与常用策略

数学类问题 1. 精度处理(高精度、实数处理、各种浮点类型处理方法) 2. 组合数学问题(斐波那契数列、第二类数、卡特兰数、Polya原理、排列组合计数、加法原理与乘法原理) 3. 进制问题(特定二进制串的统计、二分查找、利用二进制进行路径、状态描述、二进制转换) 4. 递...

2017-11-17 16:41:44

阅读数 253

评论数 0

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