- 博客(54)
- 收藏
- 关注
原创 CSP 2024 入门级第二轮 CSP-J 2024 复赛 第二题 地图探险
由于他是一步走到底,无需反复尝试,所以递归是无意义的。如以上代码:反复改变x, y,以模拟机器人的移动。顺序按题目来,不要自己糊弄。其实用模拟就可以了。每组数据重新初始化。
2024-11-04 20:39:18 256
原创 CSP 2024 入门级第二轮 CSP-J 2024 复赛 第一题 扑克牌
【代码】CSP 2024 入门级第二轮 CSP-J 2024 复赛 第一题。
2024-11-04 20:03:44 68
原创 贪心思想之——最大子段和问题
数组中子段的最大总和。例如,1 2 3 -5 4 3 -6 中的最大子段总和是 1 + 2 + 3 +( - 5)+ 4 + 3 = 8第一行一个整数 nn。第二行 nn 个整数 aiai。一个整数表示最大子段和。
2024-10-06 15:04:14 190 1
原创 差分(续前缀和)(含一维二维)
差分是前缀和的逆运算,也就是说,对差分数组就是计算前缀和数组的“原数组”,例如,差分数组为:【1, 2, 3, 4, 5】,前缀和数组就是【1, 3, 6, 10, 15】。
2024-10-01 17:25:15 437
原创 前缀和(包括一维和二维)
前缀和是在反复求一个序列中不同区间处的元素之和。例如有以下一个数组:1,2,3,4,5我们要求a[2]~a[4]()的元素之和,需要写一个循环。但是这样的算法时间复杂度很高,高达O(n^2),当数据规模大时,会超时。而前缀和可以完美解决这个问题。sum[i]就是a[0]+a[1]+...+a[i],在此样例中,sum = [1, 3, 6, 10, 15]当我们求a[2]~a[4]的和时,就可以输出sum[4] - sum[2]。
2024-09-28 21:40:40 437
原创 CSP-J/S赛前知识点大全4:初赛易错重难点2(题目答案)
【分母是所有可能:365^3,分子需要考虑一些细节,首先第一个人有365种选择,第二个人有364种选择,第三个人只有一种选择,但是还要×C(3, 2),因为需要考虑相同生日两人的选法。所以是(365*364*3)/(365*365*365) = (364*3)/(365*365) 】【欧拉公式:30000 = 3*2^4*5^4,30000*(1-1/3)*(1-1/2)*(1-1/5) = 8000】4. 从一个4*4的棋盘(不可旋转)中选取不在同一行也不在同一列上的两个方格,共有(A)种放法。
2024-09-19 22:22:03 393
原创 CSP-J/S赛前知识点大全3:初赛易错重难点1(题目答案)
1. 某二叉树有5个叶节点,其权值分别为10,12,16,21,30,则其最小带权路径长度(WPL)是( )。5. 某算法的计算时间为递推关系式T(n)=T(n-1)+n,T(0)=1,则该算法时间复杂度是。2. 对 n 个互不相同的符号进行哈夫曼编码。生成的哈夫曼树共有137个节点,则 n 的值是。3. 要连通 n 个节点的有向图,至少需要( )条边。4. n 个节点的无向完全图的边数是( )。
2024-09-18 21:08:22 231
原创 CSP-J/S赛前知识点大全1:哈夫曼树和哈夫曼编码
假设有一组字符 {a,b,c,d,e,f}, 对应的频率分别为 5%,9%,12%,13%,16%,45%。哈夫曼编码是一种贪心思想,主要是将一串序列构造成一棵树,使出现次数越多的节点的码长(及它所在层的深度)越短,以方便查找。虽然哈夫曼编码说是“左0右1”但是在此是一样的,因为不管左右,我如果想把左0右1“改成”左1右0,只需交换左右子树。具体我们只需画出来,把0和1做调整就可以,比如以第一个数为基准,把每一层的左0右1或左1右0定下来。本文是对知识点的简单概括,如果没看懂可以评论私信,大家一起解答。
2024-09-13 21:58:09 447
原创 CSP 2023 提高级第一轮 CSP-S 2023初试题详细解析
基础选择题:CSP 2023 提高级第一轮 CSP-S 2023初试题 基础部分解析-CSDN博客程序阅读第一题:CSP 2023 提高级第一轮 CSP-S 2023初试题 程序阅读第一题解析-CSDN博客程序阅读第二题:CSP 2023 提高级第一轮 CSP-S 2023初试题 程序阅读第二题解析-CSDN博客程序阅读第三题:CSP 2023 提高级第一轮 CSP-S 2023初试题 程序阅读第三题解析-CSDN博客完善程序第一题:CSP 2023 提高级第一轮
2024-09-13 21:21:06 1062
原创 CSP 2023 提高级第一轮 CSP-S 2023初试题 完善程序第二题解析
例如,当原序列为 [1,2,1,2] 时,要计算子序列 [1]、[2]、[1]、[2]、[1,2]、[2,1]、[1,2]、[1,2,1]、[2,1,2]、[1,2,1,2] 的最大值之和,答案为 18。注意 [1,1] 和 [2,2] 虽然是原序列的子序列,但不是连续子序列,所以不应该被计算。一个序列的非空连续子序列可以用两个下标 ll 和 rr(其中0≤l≤r
2024-09-08 14:42:42 374
原创 C++实现彩虹猫时空隧道特效(无害)
C++ 隐藏控制台窗口 (两种方法)-CSDN博客。无害,如果想无限下去就去掉循环条件。如果想隐藏控制台就看这篇文章。
2024-09-01 17:30:59 244
原创 CSP 2023 提高级第一轮 CSP-S 2023初试题 完善程序第一题解析
(第 k 小路径)给定一张 n 个点 m 条边的有向无环图,定点编号从 0 到 n−1,对于一条路径,我们定义“路径序列”为该路径从起点出发依次经过的顶点编号构成的序列。求所有至少包含一个点的简单路径中,“路径序列”字典序第 k 小的路径。保证存在至少 k 条路径。上述参数满足 1≤n,m≤105,1≤k≤1018。在程序中,我们求出从每个点出发的路径数量。超过 1018 的数都用 1018 表示。然后我们根据 k 的值和每个顶点的路径数量,确定路径的起点,然后可以类似地依次求出路径中的每个点。
2024-08-31 22:41:51 1323 1
原创 埃筛C++写法
第四行:只要这个数是质数,他的倍数就都是合数(虽然合数的倍数也是合数,但是他已经被它们的公约数标记了)。埃筛的作用是找素数(质数),以质数的倍数一定是合数为重心思路。我们针对这个特性,可以用打标法实现。p[x]表示x是否为质数。比如说 2 是质数,但 2 的倍数(除了自己)都是合数。3 是质数,但 3 的倍数(除了自己)都是合数。第二行:起初大家都是质数,后面慢慢删除。
2024-08-24 14:54:16 371
原创 CSP 2023 提高级第一轮 CSP-S 2023初试题 程序阅读第三题解析
【将>改为>=也就是把while循环的条件放宽,这样使j++的执行次数更多,j越大,i-j越小,甚至可能小于0,所以s的总和更小,s>=k的可能性也更小了,返回为false的次数更多了,那么g=m+1的执行次数也更多,所以结果更大或不变,原输出。【sort的复杂度O(nlogn),二分部分的复杂度O(nlogA),加起来就是nlogn+nlogA=nlog(nA),但A和n的数量级我们不清楚,无法简化】【h可能会变成比满足条件的最小值小1的那个,然后g加到h结束,比正确答案少1;一定小于等于且不一定小于。
2024-08-24 12:23:05 838 1
原创 CSP 2023 提高级第一轮 CSP-S 2023初试题 程序阅读第二题解析
【我们验证几个小规模的数据,发现除了零以外solve1()和solve2()的返回值一样,本题两个函数的返回值都为823081】【我们自己走一遍流程,发现输入10时,两个函数的返回相同,都为87(把每个数据都列出来)】【直接算,1*5+2*2+3*1+4*1+5*1 = 5+4+3+4+5 = 21】【solve1函数的基于埃氏筛法,埃筛的时间复杂度是O(nloglogn)】时,输出的第一行大于第二行。时,输出的第二行为(B)。3.(2 分)当输入为。的时间复杂度为(B)。的时间复杂度为()。
2024-08-23 15:02:00 789
原创 CSP 2023 提高级第一轮 CSP-S 2023初试题 程序阅读第一题解析
一定是0,所以执行第一次后一定还有1;第二次同理,执行完第一次的到的数,在右移之前最左边的1对应右移之后的那一位一定是0,所以执行完第二次之后依然有1,故大于0】【改成unsigned int 类型之后,执行第一步后。,改变了第一次的结果;第二次右移8位时,第一次运算结果。1. 当输入非零时,输出一定不为零。中一定有一个1,原本最右边的1对应。,参与了运算,直接改变了结果】函数的输入参数的类型改为。【直接计算,^表示异或运算】时,执行完第 55 行后。注意是执行完第 55 行】【输入非零,说明x的。
2024-08-23 11:38:59 988
原创 CSP 2023 提高级第一轮 CSP-S 2023初试题 基础部分解析
在 Linux 系统终端中,以下哪个命令用于创建一个新的目录?(B)A.newdirB.mkdirC.createD.mkfold【Linux中创建新的目录的命令为mkdir】
2024-08-22 14:43:51 1774
原创 股票买卖的思路与代码
1302:股票买卖【题目描述】最近越来越多的人都投身股市,阿福也有点心动了。谨记着“股市有风险,入市需谨慎”,阿福决定先来研究一下简化版的股票买卖问题。假设阿福已经准确预测出了某只股票在未来N天的价格,他希望买卖两次,使得获得的利润最高。为了计算简单起见,利润的计算方式为卖出的价格减去买入的价格。同一天可以进行多次买卖。但是在第一次买入之后,必须要先卖出,然后才可以第二次买入。现在,阿福想知道他最多可以获得多少利润。【输入】输入的第一行是一个整数T(T≤50),表示一共有T组数据。
2024-08-21 10:48:34 367
原创 CSP 2023 入门级第一轮 CSP-J 2023初试题详细解析
基础选择题:CSP 2023 普及组第一轮 - CSP/S 2023初试题 基础部分解析-CSDN博客程序阅读第一题:CSP 2023 普及组第一轮 - CSP/S 2023初试题 程序阅读第一题解析-CSDN博客程序阅读第二题:CSP 2023 普及组第一轮 - CSP/S 2023初试题 程序阅读第二题解析-CSDN博客程序阅读第三题:CSP 2023 普及组第一轮 - CSP/S 2023初试题 程序阅读第三题解析-CSDN博客完善程序第一题:CSP 2023 普
2024-08-20 13:26:22 1089
原创 CSP 2023 入门级第一轮 CSP-J 2023初试题 完善程序第二题解析
(编辑距离)给定两个字符串,每次操作可以选择删除(Delete)、插入(Insert)、替换(Replace),一个字符,求将第一个字符串转换为第二个字符串所需要的最少操作次数。【当两串字符相等时,我们应该退一步,也就是说去掉这两个字符也不影响答案(反正也不用对它们操作),所以要把两个字符串的下标各减一,不懂对着图1模拟】【当 i == 0 时,结合图1理解,也就是把0个字符变成 j 个字符,答案自然就是 j(增加几个字符)】【根据前两个dp下标我们可以得出:第一个为删除操作,如图。
2024-08-20 13:15:59 391
原创 CSP 2023 入门级第一轮 CSP-J 2023初试题 完善程序第一题解析
1. (寻找被移除的元素)问题: 原有长度为 n+1 公差为 1 等差数列,将数列输到程序的数组时移除了一个元素,导致长度为 n 的连续数组可能不再连续,除非被移除的是第一个或最后一个元素。需要在数组不连续时,找出被移除的元素。试补全程序。
2024-08-18 09:21:28 744
原创 CSP 2023 入门级第一轮 CSP-J 2023初试题 程序阅读第三题解析
函数的作用是计算 n 所有的因子的平方和(对)【solve2函数中循环sqrt(n)次,每次找到一个因数,先判断是不是n的平方,如果是,计算它本身即可,如果不是,那还要吧n / i计算进去】2. 第 13∼14 行的作用是避免 n 的平方根因子 i(或 n/i )进入第 16 行而被计算两次(对)【上题已经解释了】的返回值为 n^2+1(对)【质数只有两个因子,一个是1,一个是n,其因子和就是1^2+n^2,也就是1+n^2】【答案为1+p^2+n^2,但题目下没有,由于n = p^2,所以B对】
2024-08-14 20:09:40 521
原创 CSP 2023 入门级第一轮 CSP-J 2023初试题 程序阅读第二题解析
2. f 函数的返回值等于两个输入字符串的最长公共子串的长度。(错)【是两个字符串的公共子序列,不一定连续】1. f 函数的返回值小于等于 min{n,m}。(对)【先放着,结合后面的题目解释】5 == 5,返回为true,输出为1。6 == 6,返回true,输出为1。(对)【因为 x 中一定包含完整的 y】3. f 当输入两个完全相同的字符串时,1. 将第19行中的。,那么该程序(D)。
2024-08-14 18:53:13 666
原创 CSP 2023 入门级第一轮 CSP-J 2023初试题 程序阅读第一题解析
f(a, b, c)求公式的函数,在main()函数中将强制用4位小数输出。不会影响程序运行的结果(对)【乘法交换律】3. (2分)程序总是输出四位小数(对)【(对)【算一下即可,取下整】2. (2分)将第7行中的。1. (2分)当输入为。
2024-08-09 10:02:02 517 1
原创 CSP 2023 入门级第一轮 CSP-J 2023初试题 基础部分解析
【三叉树的第一层有3^0个节点,第二层有3^1个节点,第三层有3^2个节点……以此类推,前 n 层有3^0+3^1+3^2+3^3+...+3^n个节点,也就是(3^0 * (3^n - 1)) / 3 - 1个节点(等比数列求和),简化后就是(3^n - 1) / 2。【抽出一个时间段有 7 种选法,抽出两个时间段有[1, 4][1, 5][1, 6][1, 7][2, 5][2, 6][2, 7][3, 6][3, 7][4, 7] 10 种选法,抽出三个时间段只有 1 种选法】。
2024-08-08 18:46:17 1257
原创 CSP 2022 提高级第一轮 CSP-S 2022初试题 完善程序第二题解析
【正确答案: A,因为此处要把y倒给x,其中t是x剩余能到空间和y剩余水量的最小值,一免出现负数情况。【正确答案: A,此处应该判断是否已经实现有一个容器中的水量到达c】【正确答案: C,因为此处要把x倒给y,与上一题同理。【正确答案: A,此处与第一题同理】【正确答案: C,此处与第二题同理】
2024-08-06 15:55:20 470
原创 CSP 2022 提高级第一轮 CSP-S 2022初试题 完善程序第一题解析
已知两个长度均为 n 的有序数组 a1 和 a2(均为递增序,但不保证严 格单调递增),并且给定正整数 k(1≤k≤2n),求数组 a1 和 a2 归并排序后的数组里 第 k 小的数值。这里判断一下是不是left1 == 0,如果是的话返回a2中前k个的的最大值也就是a2[k - 1],因为这样子一定是right1靠过来才结束的。【正确答案: C,用k减去left1则是另一个序列中的选中的最后一个值,但是由于从0开始,所以下标还要 - 1】【正确答案: B,因为此次判断两数大小,取小者选入】
2024-08-06 14:24:30 1068
原创 CSP 2022 提高级第一轮 CSP-S 2022初试题 程序阅读第三题解析
【 ans[0] = (100 % -7 + 7) % 7 = 100 % 7(因为100是正数所以也等于) = 2。3. 除非输入的 n 为 0,否则程序输出的字符数为 ⌊logk∣n∣⌋+1。负数的求余在不同的语言的编译器下运行结果不一样,以下是在C++语言中运行的效果。2. 删除第 23 行的强制类型转换,程序的行为不变。6. 当输入为“1000000 19”时,输出为(B)。5. 当输入为“-255 8”时,输出为(B)。4. 当输入为“100 7”时,输出为(A)。
2024-08-05 13:02:35 1000 3
原创 CSP 2022 提高级第一轮 CSP-S 2022初试题 程序阅读第二题解析
一、代码查看1 #include <iostream>2 3 using namespace std;4 5 const int MAXN = 105;6 7 int n, m, k, val[MAXN];8 int temp[MAXN], cnt[MAXN];9 10 void init() 11 {12 cin >> n >> k;13 for (int i = 0; i < n; i++) ci
2024-08-05 11:07:11 1261
原创 CSP 2022 提高级第一轮 CSP-S 2022初试题 基础部分解析
在 Linux 系统终端中,用于切换工作目录的命令为(B)。A. IsB. cdC. cpD. all解析,Linux系统中切换目录的命令为 cd。
2024-08-04 14:38:59 1748 2
原创 DevEco Studio 显示Text文字
每条一个Deveco Studio Next 小技巧,话不多说,马上开始~其实默认代码已经实现该效果,我便不上传效果了😊。打开Index.ets,一般默认已经打开。
2024-08-04 11:23:38 274
原创 华为手机平板开启下方提示条(横条)
打开设置,系统与更新,系统导航方式,手势导航,更多设置,显示提示条。该功能部分机型不支持,我的MatePad SE支持(别买,割韭菜)
2024-08-03 22:07:33 965
原创 DevEco Studio 创建Button按钮,在被点击的时候发出响应
每条一个Deveco Studio Next 小技巧,话不多说,马上开始~Deveco Studio Button 效果。打开Index.ets,一般默认已经打开。更多问题去华为官方博客看~
2024-08-01 20:48:48 723
只需 1 积分!8个超有用的PE,干净无广告,详见内容,一起放进U盘里,再也不怕电脑坏了!
2024-08-02
下载链接:Windows 11 24H2 尝鲜,原版镜像,升级不丢数据
2024-08-02
上下载链接!神奇!U 盘里还能装完整的 Windows 11,还不会丢失数据!出差族的救星!
2024-08-01
上下载链接!Ventoy 和 主题美化包下载!macOS风格
2024-08-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人