自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

信息学奥赛学案

从零开始信息学奥赛

  • 博客(62)
  • 资源 (1)
  • 收藏
  • 关注

原创 CSP-J/S第一轮测试模拟训练集

CSP-J/S第一轮测试知识点请参看链接以下模拟测试,答完即可获得答案及解析。每周五、周六B栈直播讲解直播间ID:24933359直播链接:http://live.bilibili.com/24933359选择题目的模拟训练模拟测试一模拟测试二模拟测试三模拟测试四阅读程序的模拟训练模拟测试一模拟测试二模拟测试三模拟测试四历年真题模拟测试模拟测试一模拟测试二模拟测试三模拟测试四仿真试卷模拟测试模拟测试一模拟测试二模拟测试三模拟测试四............

2022-05-30 09:10:53 3010

原创 CSP-J/S第一轮测试知识点全覆盖

题型CSP-J/S第一轮测试的考察题型是:1、选择题,共15题,每题2分,共30分;2、阅读程序题,共计40分。一般三道程序题目,判断题每题1.5分,选择题每题3分;3、完善程序题,共计30分,选择题目,每题3分;一般两到题目。知识点1、计算机基础知识(1)计算机基础知识(一) 计算机基础知识一 (2)计算机基础知识(二)

2022-05-25 09:21:50 20231 9

原创 信息学奥赛(NOIP/CSP-J/S)学习全目录

课程学习顺序指引1、纲要2、CL0-CL4内容后续更新3、CL5 递归:地址4、JL4搜索:地址一其他内容陆续更新练习指引1、51nod一起刷题2、洛谷一起刷题3、历年真题刷题陆续更新

2022-05-02 10:34:09 5987

原创 关于如何学习信奥

一、什么是信息学奥赛简而言之,是全球青少年编程的最高级别奥林匹克竞赛,在高考和就业中都有着举足轻重的作用!作用越大,学习难度也越大!欲带其冠必承其重!关于如何参赛,后续详解,着急的可以问度娘,搜索关键字noip二、课程体系信奥的课程体系,众说纷纭。本博客采用51nod的课程体系,原因有二:1、该课程体系,可以让最短时间的学习能达到参赛的目的,并在比赛中获得一定成绩。当然课程体系是严格按照noi(信息学奥赛)的课程大纲设置的。2、51nod配置的题库是目前我能接触到的思维难度最高的,适合初学者的

2022-04-29 10:26:51 3657 3

原创 基础算法--贪心算法

贪心算法初探

2022-07-19 10:58:06 683 1

原创 STL---Set容器

set

2022-07-08 10:12:13 433

原创 图论--最近公共祖先LCA

求最近公共祖先LCA的三种方法

2022-07-08 09:04:54 2020 4

原创 图论--哈密顿路与欧拉路

哈密顿路与欧拉路

2022-07-08 08:11:17 4404

原创 图论--DAG与拓扑排序

DAG 图与拓扑排序

2022-07-07 16:44:19 1297

原创 基础算法--高精度

高精度加法、乘法

2022-07-05 11:02:49 314

原创 基础算--简单枚举

简单枚举

2022-07-05 10:48:10 395

原创 一维数组灵活运用、一维前缀和

一维数组灵活运用、前缀和

2022-07-05 10:36:41 277

原创 图论---最小生成树

图的最小生成树

2022-07-05 08:42:26 462 1

原创 图论--图的最短路径

图的最短路径

2022-07-04 16:24:54 910 1

原创 图论--图的存储及遍历

图的存储与遍历

2022-07-04 14:13:32 1132

原创 状态压缩DP

状态压缩问题入门

2022-07-04 10:45:39 378

原创 数据结构--并查集

并查集

2022-07-04 09:55:47 1117

原创 特殊类型动归--区间动归与环形动归

区间DP与环形DP

2022-07-01 16:29:40 315

原创 数据结构--二叉堆与优先队列

二叉堆与优先队列

2022-07-01 14:57:12 350

原创 数据结构--二叉树

二叉树初探

2022-07-01 14:10:39 484

原创 搜索优化剪枝策略

搜索的优化剪枝

2022-07-01 10:19:02 912

原创 线性动归3--最长上升子序列(LIS)、最长公共子序列(LCS)与最短编辑距离

最长上升子序列与最长公共子序列问题全解

2022-06-28 14:14:23 283

原创 背包九讲--混合背包、分组背包、资源分配背包、背包方案总数

背包九讲--混合背包、分组背包、资源分配背包、背包方案总数

2022-06-13 10:51:36 427

原创 背包九讲--背包综合题目

背包问题综合练习题目

2022-06-09 10:14:11 403

原创 背包九讲--多重背包+二维费用背包

背包九讲--多重背包+二维费用背包

2022-06-07 09:58:01 419

原创 背包九讲--完全背包

30分钟彻底弄懂完全背包问题

2022-06-02 10:29:20 444

原创 背包九讲-01背包

动态规划是求最优解问题的重要解法,也是信息学奥赛中每年必考的内容之一。学习动态规划更应该注重此类问题思维能力的锻炼,多多做题,一般>50题后方可入门。注意理解以下概念1、状态2、状态属性3、状态的计算,也就是状态转移4、优化:DP的优化都是代码的等价代换.........

2022-06-01 15:00:33 750 2

原创 全面解读算法时间复杂度

衡量一个算法优劣的标准在信息学奥赛中,一个算法的优劣主要从算法的执行时间和所需要占用的存储空间两个方面衡量。由于近年来信息学奥赛比赛题目中空间要求逐渐增大,因此,更多的是关心程序的时间复杂度。当追求一个较好的时间复杂度时,可能会使空间复杂度的性能变差,即可能导致占用较多的存储空间。反之,当追求一个较好的空间复杂度时,可能会使时间复杂度的性能变差,即可能导致占用较长的运行时间。空间复杂度空间复杂度 是对一个算法在运行过程中临时占用存储空间大小的量度。比如int a[100];所占用的内存空间大小

2022-05-20 08:52:31 2327 1

原创 史上最全排序算法全面总结

考察点在信息学奥赛初赛中对于排序算法的考察主要体现在以下几方面:1、时间复杂度2、稳定性3、最坏情况下移动次数4、移动次数与关键字顺序关系先看熟记知识点1.关于稳定性:即两个数经过排序后其在序列中的相对位置是否会发生变化,不变则是稳定算法;不稳定:快选堆希(快速排序、选择排序、堆排序、希尔排序)稳 定:插冒归计基(简单插入排序、冒泡排序、归并排序、计数排序、基数排序)2.关于移动次数和关键字顺序无关的排序顺口溜:一堆(堆排序)海龟(归并排序)选(选择排序)基(基数排序)友再细

2022-05-19 10:25:43 2067 1

原创 csp-j/s组第一轮测试140题版本模拟试题及解析

1、在8位二进制补码中,10101010表示的数是十进制下的(B)A、176 B、-86 C、-85 D、-84答案解析:补码=反码+1;反码=原码除符号位外各个位取反;原码是和十进制对应的;所以,现将补码10101010转化成原码:符号位不变,减1后得到10011111,然后按位取反得到11100000,最后按权展开求和得到十进制数-86。2、中缀表达式A-(B+C/D)E的后缀表达式是(D)A、AB-C+D/E B、ABC+D/-E* C、ABCD/E*± D、ABCD

2022-05-18 11:59:07 18365 1

原创 搜索题目综合

BFS1、小X学游泳2、迷宫出口3、走出迷宫的最少步数4、走出迷宫的最少步数25、数池塘6、骑士巡游7、骑士牛8、走出迷宫的最短路径9、泉水10、最小拐弯路径DFS1、卒的遍历2、马的遍历3、方格取数4、特殊的质数肋骨5、古希腊之争(二)6、素数环7、素数环28、子集和求解9、单词接龙10、湖计数【后续提供视频讲解和标程】前面课程连接1、宽度优先搜索2、深度优先搜索3、回溯法-排列组合类4、回溯法-切割问题与子集问题5、回溯法-棋盘类问题...

2022-05-17 15:32:12 653

原创 宽度优先搜索--BFS

BFS基本思想宽度优先搜索(Breadth First Search,BFS),简称宽搜,又称广度优先搜索。它是从初始结点开始,应用产生式规则和控制策略生成第一层结点,同时检查目标结点是否在这些生成的结点中。若没有,再用产生式规则将所有第一层结点逐一拓展,得到第二层结点,并逐一检查第二层结点是否包含目标结点。若没有,再用产生式规则拓展第二层结点。如此依次拓展,检查下去,直至发现目标结点为止。如果拓展完所有结点,都没有发现目标结点,则问题无解。BFS适合求最少步骤或者最短解序列这类最优解问题例如,求最大

2022-05-13 11:07:27 4134

原创 回溯法--棋盘类

这类问题需要注意三个问题1、存储问题:一般用二维数组存储2、枚举对象:一般以坐标作为枚举对象3、坐标增量:二维数组或者两个一维数组迷宫问题先看一个简易迷宫问题吧现在有一个小迷宫,如图所示,请编程求解从入口到终点的最短路径。迷宫由n行m列的单元格组成,且n,m小于等于50.注意黑色区域快不可以走,只能走白色区域。输入: 第一行:n,m,分别代表n行m列。第2-n行表示为迷宫,0表示空地,1表示障碍物。最后一行,x,y,p,q前两个为入口坐标,后两个为终点坐标。 输出: 最短路径样

2022-05-10 15:57:23 571

原创 回溯法--切割问题与子集问题

一、DFS的框架,必须熟记void dfs(int k){ if(到达终点或者目的地) { 输出问题解或者解得方案数+1; } for(int i = 0;i<="可扩展状态总数";i++) { 按照规则,产生新的状态; if(判断新状态是否合法) { 保存合法结果; dfs(k+1); 恢复现场,回溯;//可以没有,根据情况来定 } }}int main(){ ..... dfs(k); 回溯;//可选 return 0;

2022-05-06 16:09:39 1343 3

原创 二分查找及二分答案

二分思想二分是一种常用且非常精妙的算法,常常是我们解答问题的突破口,二分的基本用途是在单调序列或单调函数中做查找操作,因此当问题的答案具有单调性时,就可以通过二分把求解转化为判定(根据复杂度理论,可知判定的难度小于求解),这使得二分的应用范围变得很广泛。二分的关键是边界,而不是单调性,所以,小白学习二分一定要注意边界问题。线性查找需要从头开始不断地按顺序检查数据,因此在数据量大且目标数据靠后,或者目标数据不存在时,比较的次数就会更多,也更为耗时。若数据量为 n,线性查找的时间复杂度便为 O(

2022-04-20 16:38:13 2042 10

原创 深度优先搜索(DFS)

一、关于DFS的一些小概念DFS可谓是“不撞南墙,不回头”。就像走迷宫一样,选择一条路一直走下去,当撞南墙了,才返回分叉口去试下一条路。有两个概念需要提前明晰一下:1、状态:状态一般是指客观现场信息的描述,通常用T表示。一般要注意是指当前状态,用T0表示初始状态,Tn表示终止状态。2、产生式系统。状态依据产生式规则,转移至另一个状态。它主要体现状态的表示,新状态产生的规则,状态转移三大功能。重点理解1、DFS实际上是利用递归进行的暴力搜索,因此,写DFS之前我们要弄清楚枚举对象,这点很关键,枚举

2021-09-22 10:17:50 1867 7

原创 回溯法--排列组合类

一、关于DFS的一些小概念DFS可谓是“不撞南墙,不回头”。就像走迷宫一样,选择一条路一直走下去,当撞南墙了,才返回分叉口去试下一条路。有两个概念需要提前明晰一下:1、状态:状态一般是指客观现场信息的描述,通常用T表示。一般要注意是指当前状态,用T0表示初始状态,Tn表示终止状态。2、产生式系统。状态依据产生式规则,转移至另一个状态。它主要体现状态的表示,新状态产生的规则,状态转移三大功能。二、DFS的框架void dfs(int k){ if(到达终点或者目的地) { 输出问题解或者

2021-09-09 15:49:17 980 3

原创 NOIP中的数学--关于取模(MOD)第五课(上)

Mod运算在这之前,假定你知道什么是模运算,3%5=3 ,167%100=67 ,就是这样简单。所有整数,对n取模得到的结果只可能是0到n-1 ,这 个数组成的集合,有个名字 剩余系。这些性质十分有用哦!例题1:正整数的平方和同余同余是数论中的重要概念。给定一个正整数m ,如果两个整数 a和 b满足a-b 能够被 m整除,那么,就称整数a 与b 对模m 同余,记作 a=b(mod m)对模m 同余是整数的一个等价关系。**课堂练习:1、N的倍数2、阶乘后面0的数量3、阶乘0的数量 V

2021-04-02 09:30:53 611

原创 NOIP中的数学--快速幂 第5课(下)

快速幂在求a的b次方时,暴力的做法是O(b)的,而有一种高效的O(log(b))的做法———快速幂1 、快速幂的思想因为a2b =(a2)b,底数增加了一倍,而时间复杂度却降低了一半。快速幂就是基于这个性质的一个算法。采用分治与倍增的思想。假设我们要求ab,那么其实b是可以拆成二进制的,该二进制数第i位的权为2(i-1),例如当b=11时,a11=a(20+21+23)  11的二进制是1011,11 = 2³×1 + 2²×0 + 2¹×1 + 2º×1,因此,我们将a¹¹转化为算 a(20)*

2021-04-01 15:23:20 356

原创 NOIP中的数学 -- 第7课 组合数

1.当n,m都很小的时候可以利用杨辉三角直接求。C(n,m)=C(n-1,m)+C(n-1,m-1);2、n和m较大,但是p为素数的时候Lucas定理是用来求 c(n,m) mod p,p为素数的值。C(n,m)%p=C(n/p,m/p)*C(n%p,m%p)%p也就是Lucas(n,m)%p=Lucas(n/p,m/p)*C(n%p,m%p)%p求上式的时候,Lucas递归出口为m=0时返回1求C(n%p, m%p)%p的时候,此处写成C(n, m)%p(p是素数,n和m均小于p)C(n,

2021-02-27 12:28:10 516

C++while循环初探

信息学奥赛C++语言基础,while循环初探。 C++语言基础是信息学奥赛的基础,而循环又是C++语言的基础!

2020-12-05

空空如也

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

TA关注的人

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