- 博客(219)
- 收藏
- 关注

原创 CCF-GESP编程能力等级认证课程安排
天秀信奥GESP考级课程安排GESP一级考级Level-1 (21课时)课时知识模块知识点教学目标备注1-3计算机基础与编程环境计算机历史,计算机硬件组成,操作系统基础,集成开发环境的安装与使用,项目的创建与管理,代码的编写与调试了解计算机的发展历史,掌握计算机硬件的基本组成,熟悉常用操作系统的基本操作,掌握集成开发环境的安装与基本使用方法,能够创建与管理项目,编写并调试简单的程序代码准备好计算机硬件实物或图片,操作系统安装包或演示环境,集成开发环境的安装包,提供项目创
2024-04-03 01:20:06
2456

原创 C语言基础入门教程/C++基础入门教程(天秀腾飞计划文档,超详细包含习题,个人独创)
1、本教程和其他教程的不同点其他教程:目前市面上的教程都是基于知识点出发,只进行知识点的讲解,读者读完后发现题目都不会做,无从下手。本教程:从题目中学习C/C++知识点,根据刷题直接掌握,提高学习效率。本教程会同时使用两种方法进行编写,学习C语言的也可以同时学习C++。2、本教程后期会有配套的视频讲解,可以持续关注一下。3、为什么开始写这份教程,最开始这份教程是用于培训小朋友信息学奥赛CSP-J定级的,后面感觉可能大学的一些小朋友们也需要,所以分享出来给大家。
2023-06-24 01:52:53
1242
原创 GESP七级 - 知识点1-数学库函数
C++语言提供了丰富的标准数学函数库<cmath>常用函数示例:sin(x)cos(x)tan(x)asin(x)acos(x)atan(x)角度(度)弧度sin(x)cos(x)tan(x)0°001030°π/61/2√3/2√3/345°π/4√2/2√2/2160°π/3√3/21/2√390°π/210不定义对数函数:log(x)log(1) = 0log(e) = 1log(1) = 0log10(x)指数函数:exp(x)
2025-03-07 19:40:34
408
原创 P9974 [USACO23DEC] Candy Cane Feast B
Farmer John 的奶牛对甜食情有独钟,它们尤其喜欢吃糖果棒。FJ 共有N头奶牛,每头奶牛都有一个特定的初始高度。他想要喂它们M根糖果棒,每根糖果棒的高度也各不相同(1≤NM≤2⋅105FJ 计划按照输入给出的顺序,逐一喂给奶牛们糖果棒。然后,奶牛们会按照输入给出的顺序一个接一个地排队,走向糖果棒,每头奶牛最多吃到与它高度相同的部分(因为它们够不到更高的地方)。即使奶牛吃掉了糖果棒的底部,糖果棒也在最初悬挂的地方保持不动,并不会被降低到地面。
2025-01-25 18:16:30
938
原创 差分题目总和
给定一个大小为n×n的二维矩阵,初始时矩阵中的所有元素都为 0。你需要进行m次操作,每次操作向某一个矩形区域内的所有元素加上一个固定的值。请你在所有操作完成后输出最终的矩阵。
2024-10-20 21:02:47
1048
原创 CSP-J阅读程序专题第二题 - 2
A. 程序不会编译通过。B. 程序运行时会出错。C. 程序输出会不正确。D. 程序输出保持不变。函数的返回值为( )函数的返回值为( )
2024-09-15 10:16:53
370
1
原创 CSP-J选择题专项训练1 -数据结构图
给定一棵二叉树,如果每个节点都只有左子树或右子树(即没有两个子节点同时存在),则这种树是什么类型?图中没有任何边的子图称为:下列哪个是图的存储方式?若一无向图有 n 个顶点,m 条边,则该图的邻接矩阵的空间复杂度是:在下列哪种图中,顶点的入度和出度相等?图的深度优先遍历算法的主要特点是:下列关于最小生成树的描述,正确的是:在无向连通图中,使用广度优先遍历算法可以得到:Dijkstra算法用于解决哪类问题?在图的广度优先搜索中,使用的数据结构是:Kruskal算法实现最小生成树的核心数据结构是:下列哪种图的遍
2024-09-12 20:24:26
489
原创 CSP-J选择题专项训练1 -数据结构树
这些选择题更具挑战性,涉及树的不同方面,包括二叉树的遍历、表示方法,特殊树(如哈夫曼树、二叉搜索树、Trie树等)的性质与应用。
2024-09-08 11:27:51
1160
原创 CSP-J选择题 - 排列组合
排列问题:有5名学生参加比赛,要求排成一排拍照,有多少种不同的排列方式?组合问题:从10本书中选出3本书送给朋友,有多少种不同的选择方式?排列问题:一个教室有7个座位,5个学生需要坐下,有多少种不同的排列方式?组合问题:从12个人中选出4个人组成一个团队,有多少种不同的方式?排列问题:一个密码由4个字母组成,字母可以重复使用,有多少种不同的排列组合?组合问题:从8个不同颜色的球中选出3个,不考虑顺序,有多少种选择?排列问题:4名学生排成一排,有多少种排列方式?组合问题:从10名运动员中选出2
2024-09-07 18:39:38
542
原创 8、嵌套循环 - 循环中的循环 - 课件
嵌套循环是指一个循环结构内部再包含一个或多个循环结构。这种结构用于处理需要多重遍历或多重条件判断的场景。
2024-08-30 15:01:20
514
原创 9、穷举算法-逐一尝试法 - 课件
食堂采购员用 (n) 元去水果市场采购苹果和梨,已知苹果 (x) 元/斤,梨 (y) 元/斤,要求每种水果都至少购买到 10 斤或 10 斤以上,且要把 (n) 元花完,请问有多少种不同的买法?穷举法的基本思路是:遍历所有可能的小狗的数量,然后计算剩余的钱数能否被小猫的价格整除。穷举法的基本思路是:遍历所有可能的鸡的数量,然后计算相应的兔的数量,验证这些数量是否满足腿的总数。财主的餐具有 2 种:大碗和小碗,财主和阿凡提说,你买我的碗,要花光你带的钱,而且,两种碗都要买,买的两种碗的数量都得是偶数。
2024-08-26 23:39:23
1124
原创 CSP-J复赛复习专栏 - 05素数筛算法
线性筛法是一种改进的素数筛选算法,它的时间复杂度为 (O(n))。与埃拉托色尼筛法相比,线性筛法不会重复标记同一个数,从而使筛选过程更加高效。线性筛法在处理大范围的素数时非常高效,因为它只标记每个合数一次,时间复杂度为 (O(n))。,用于标记哪些数是素数。初始化时,所有数都假定为素数(标记为。首先,初始化一个布尔数组,假定所有数都为素数。函数生成素数列表,并输出这些素数。然后,我们遍历布尔数组,将所有标记为。的倍数,将来会由其他较小的素数标记。的所有倍数标记为合数。最后,函数返回所有找到的素数,并在。
2024-08-26 14:38:40
311
原创 CSP-J-动态规划
你可以通过在任意位置插入字符,使得该字符串变成一个回文。请你编写一个程序,计算并返回需要插入的最少字符数。(最小插入次数回文问题)给定一个字符串。
2024-08-23 16:57:45
258
原创 CSP-J-链表
链表知识点1.1单链表单链表的每个节点至少包含以下哪个部分:( )A. 数据域B. 指针域C. 数据域和指针域D. 索引域在单链表中,通常使用哪个指针来访问链表的第一个节点:( )A. 前驱指针B. 后继指针C. 头指针D. 尾指针单链表的插入操作时间复杂度为:( )A. O(1)B. O(n)C. O(log n)D. O(n^2)在单链表中,查找某个节点的时间复杂度是:( )A. O(1)B. O(n)C. O(log n)D. O(
2024-08-23 10:30:12
585
1
原创 图论算法 - 02邻接矩阵存储有向图
在一个有向图中,节点的出度定义为从该节点出发的边的数量,入度定义为指向该节点的边的数量。给定一个有向图,请计算并输出图中每个节点的入度和出度。
2024-08-20 16:11:11
445
1
原创 CSP-J复赛复习专栏 - 03kadane算法
他有一份记录了某只股票在连续N天中的每日利润(可能为正,也可能为负)。小明想要知道在这N天中,他如果选择一个连续的交易区间,最多能获得多少利润。给定一个长度为N的整数数组,表示股票在N天中的每日利润。最大利润区间为第3天到第7天,总利润为4 + (-1) + (-2) + 1 + 5 = 7。第二行包含N个整数,每个整数的绝对值不超过10000,表示每天的利润。第一行包含一个整数N(1 ≤ N ≤ 100000),表示天数。输出一个整数,表示最大连续利润。如果不可能获得正利润,输出0。
2024-08-20 11:45:23
231
原创 CSP-J-第一道选择题考点
C++关键字是语言的基础构建块,理解它们的用途和正确使用方法对于编写高效、可维护的C++程序至关重要。本文对C++关键字进行了全面的分类和解释,希望能够帮助读者更好地掌握C++编程语言。随着C++标准的发展,一些新的关键字可能会被引入,而一些旧的关键字可能会被废弃,因此持续关注C++的发展对于保持编程技能的更新也非常重要。
2024-08-19 11:31:59
706
1
原创 P1032 [NOIP2002 提高组] 字串变换
本题不保证存在靠谱的多项式复杂度的做法。测试数据非常的水,各种做法都可以通过,不代表算法正确。因此本题题目和数据仅供参考。本题为搜索题,本题不接受 hack 数据。
2024-08-06 17:42:09
1132
原创 CSP-J选择题专项训练1 - C++语言特性
CSP-J选择题专项训练1 - C++语言特性第一套第 1 题 以下C++不可以作为变量的名称的是( )。A. CCF GESPB. ccfGESPC. CCFgespD. CCF_GESP第 2 题 C++中用于动态内存分配的关键字是( )。A. mallocB. allocateC. newD. create第 3 题 C++中,下面哪个选项是合法的数组声明( )。A. int arr[10];B. int arr[];C. int arr[10.5];
2024-08-06 11:50:37
128
原创 P3056 [USACO12NOV] Clumsy Cows S
()(())()(()()))(())(((())))给出一个偶数长度的括号序列,问最少修改多少个括号可以使其平衡。
2024-06-21 18:37:16
1175
原创 P1739 表达式括号匹配
假设一个表达式有英文字母(小写)、运算符()和左右小(圆)括号构成,以作为表达式的结束符。请编写一个程序检查表达式中的左右圆括号是否匹配,若匹配,则输出YES;否则输出NO。表达式长度小于255,左圆括号少于20个。
2024-06-21 17:04:40
606
原创 7、for循环 - 课件
想象一下,你要在黑板上写下数字1到5。你会怎么做呢?你可能会一个接一个地写下这些数字,对吧?for循环就是帮助计算机做这种重复工作的一个工具!for循环让计算机可以重复做某件事情一定的次数。它就像是一个聪明的机器人,你告诉它要做什么,做多少次,它就会精确地完成任务。
2024-06-21 16:44:18
824
原创 P1427 小鱼的数字游戏
小鱼最近被要求参加一个数字游戏,要求它把看到的一串数字ai(长度不一定,以0结束),记住了然后反着念出来(表示结束的数字0就不要念出来了)。这对小鱼的那点记忆力来说实在是太难了,你也不想想小鱼的整个脑袋才多大,其中一部分还是好吃的肉!所以请你帮小鱼编程解决这个问题。
2024-06-21 16:34:44
471
原创 6、while循环 - 课件
想象一下,你妈妈让你吃5个苹果。你会怎么做呢?你会一个接一个地吃,直到吃完5个。这就像计算机中的while循环!while循环就是重复做某件事,直到满足某个条件为止。
2024-06-21 15:27:56
490
原创 第一章 - 第11节- 因特网概述 - 课后习题
用户名和域名都不能为空;万维网(World Wide Web,简称WWW或Web)是一个基于超文本和HTTP协议的、全球性的、动态交互的、跨平台的分布式图形信息系统。它是建立在互联网基础上的一种网络服务,向世界提供了一个互相关连的、可以通过浏览器访问的大量超文本文档,极大地方便了信息的发布、检索和获取。TCP/IP协议是互联网的核心协议,它是一个多层次的协议集合,将复杂的网络通信过程分解为若干个相对独立的层次,每个层次负责不同的通信功能。在电子邮件的工作过程中,发送邮件和接收邮件是由不同的协议分工完成的。
2024-06-20 15:06:26
154
原创 第一章 - 第11节- 因特网概述 - 课件
因特网(Internet)是一个建立在网络互联基础上的最大的、开放的全球性网络。因特网拥有数千万台计算机和上亿个用户,是全球信息资源的超大型集合体。因特网起源于 20 世纪 60 年代中期,由美国国防部高级研究计划局(ARPA)资助的 ARPANET,此后提出的 TCP/IP 协议为因特网的发展奠定了基础。我国正式接入因特网是在 1994 年 4 月,当时为了发展国际科研合作的需要,中国科学院高能物理研究所和北京化工大学开通了到美国的因特网专线,并有千余科技界人士使用了因特网。
2024-06-20 10:03:46
202
原创 5、分支对比 - 课件
根据学生的成绩评定等级:90分及以上为A,80-89分为B,70-79分为C,60-69分为D,60分以下为E。判断一个年份是否为闰年。闰年的判断条件为:能被4整除但不能被100整除,或者能被400整除。判断一个整数是奇数还是偶数。
2024-06-18 19:51:08
375
原创 第二章 - 第2节- 栈 - 课后习题
要想按照1,2,3,4,5的顺序出栈,就需要先将所有元素出栈,然后再按照相反的顺序重新入栈,这样才能实现先进先出的顺序,但这已经违背了栈的基本特性。因此,函数调用是栈的重要应用。这也体现了栈的后进先出特性,因为不同的出栈顺序会导致不同的出栈序列,而这些出栈序列的数量与元素的排列方式直接相关。虽然4和5不是按照入栈的相反顺序出栈的,但是它们可以先出栈,然后再按照后进先出的顺序出栈剩余的元素。在分析出栈序列时,我们需要按照与入栈顺序相反的顺序进行出栈,即最后入栈的元素最先出栈,最先入栈的元素最后出栈。
2024-06-18 18:36:11
119
原创 第二章 - 第2节- 栈 - 课件
将A柱上的部分盘子经由B柱移入C柱,若A柱上的操作记录为:进,进,进,进,出,出,进,出,进,出,进,出,那么在A柱上从下到上依次留下的编号为( )第四题 【NOIP2003提高组】已知元素{8,25,14,87,51,90,6,19,20},则这些元素以( )的顺序依次被推入栈后,使栈的顺序满足:在51前有90;入栈顺序为:25,51,8,20,19,90,87,14,6,最终栈中的顺序(从栈顶到栈底)为:6,14,87,90,51,19,20,8,25,满足题目给出的所有条件。
2024-06-18 16:28:12
110
原创 4、多分支判断 - 课件
这里的判断条件1, 判断条件2, 判断条件3等都是布尔表达式,它们的值只能是true或false。这些判断条件可以是各种各样的,例如:a > ba < ba >= ba <= ba == ba!= b!判断条件在这个例子中,我们使用了比较运算符和number > 0number > 0number < 0number > 0number < 0通过使用具体的判断条件,我们可以让多分支判断的逻辑更加清晰和易于理解。在实际编程中,你可以根据具体问题的需要,使用各种不同的判断条件。
2024-06-18 10:44:51
401
原创 2、拆位练习 - 课件
在拆位中,我们可以用除法运算符 / 来获取一个数字的高位部分。具体来说,就是用这个数字去除以一个适当的倍数(通常是10的幂),得到的商就是高位部分。在拆位中,我们可以用取余运算符 % 来获取一个数字的低位部分。具体来说,就是用这个数字去除以一个适当的倍数(通常是10的幂),得到的余数就是低位部分。个位是: 4。
2024-06-18 10:06:56
450
原创 第二章 - 第1节- 逻辑运算 -课后习题
第一题 若 P = true,Q = false,R = true,则逻辑表达式 (P ∧ Q) ∨ (¬P ∧ R) 的值为:正确答案:B解析:正确答案:B解析:正确答案:D解析:首先,我们需要了解各个运算符的优先级和计算顺序。在 C++ 中,按位与(&)的优先级高于按位或(|),按位异或()的优先级在两者之间。因此,我们先计算按位与(&)和按位异或(),然后计算按位或(|)。计算 15 & 6:计算 12 ^ 3:计算 (15 & 6) | (12 ^ 3):因此,表达式 15 & 6 | 12 ^
2024-06-17 18:43:03
219
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人