- 博客(49)
- 收藏
- 关注
原创 X 进制减法
进制规定了数字在数位上逢几进一。XX 进制是一种很神奇的进制,因为其每一数位的进制并不固定!例如说某种 XX 进制数,最低数位为二进制,第二数位为十进制,第三数位为八进制,则 XX 进制数 321321 转换为十进制数为 6565。现在有两个 XX 进制表示的整数 AA 和 BB,但是其具体每一数位的进制还不确定,只知道 AA 和 BB 是同一进制规则,且每一数位最高为 NN 进制,最低为二进制。请你算出 A−BA−B 的结果最小可能是多少。
2025-03-13 20:58:00
155
原创 P1255 数楼梯
这道题前60%不需要使用高精度,但是后40%需要。于是我们先写一个高精度加法,然后再写一个斐波那契函数。楼梯有 NN 阶,上楼可以一步上一阶,也可以一步上二阶。编一个程序,计算共有多少种不同的走法。
2025-01-11 20:45:54
298
原创 快速排序进阶版(加入插入排序提高其性能)
(这个值是可以根据具体情况调整的),使用插入排序会更有效率,因为插入排序对于小数组来说非常高效。在快速排序中加入一个小优化,当待排序的子数组的大小小于某个阈值时,使用插入排序来加速排序,这种方式称为“混合排序”。我们通过将小数组的排序任务交给插入排序来优化快速排序,这种方法可以减少递归深度,提高排序效率。当nnbreak时,快速排序的性能能最佳。因此当n>nbreak时,我们可以把插入排序和快速排序综合为一个排序函数,可以提高快速排序的性能。
2025-01-07 17:22:59
350
原创 【数据结构】实验二 单链表的基本操作
1)根据输入的一系列整数,以0标志结束,用头插法建立单链表,并输出单链表中各元素值,观察输入的内容与输出的内容是否一致。4)在单链表中查找第i个元素,如果查找成功,则显示该元素的值,否则显示该元素不存在。2)在单链表的第i个元素之前插入一个值为x的元素,并输出插入后的单链表中各元素值。3)删除单链表中第i个元素,并输出删除后的单链表中各元素值。掌握链表基本操作的算法实现,以及对相应算法的性能分析。掌握线性表的链式存储结构的表示和实现方法。
2024-11-14 13:49:39
473
1
原创 【数据结构】实验一 顺序表的基本操作
掌握线性表的基本操作:插入、删除、查找以及线性表合并等运算在顺序存储结构上的运算,以及对相应算法的性能分析。(1)根据输入顺序表的长度n和各个数据元素值建立一个顺序表,并输出顺序表中各元素值,观察输入的内容与输出的内容是否一致。(4)在顺序表中查找第i个元素,如果查找成功,则显示“查找成功”和该元素在顺序表中的位置,否则显示“查找失败”。(2)在顺序表的第i个元素之前插入一个值为x的元素,并输出插入后的顺序表中各元素值。(3)删除顺序表中第i个元素,并输出删除后的顺序表中各元素值。三、实验思路及结果分析。
2024-11-14 13:46:00
611
原创 [蓝桥杯 2023 省 A]填空问题1
小蓝认为如果一个数含有偶数个数位,并且前面一半的数位之和等于后面一半的数位之和,则这个数是他的幸运数字。例如 23142314 是一个幸运数字,因为它有 44 个数位,并且 2+3=1+42+3=1+4。现在请你帮他计算从 11 至 100000000100000000 之间共有多少个不同的幸运数字。
2024-04-02 18:44:51
388
原创 设计一个动物声音“模拟器”,希望模拟器可以模拟许多动物的叫声。
该类有一个playSound(Animal animal)方法,该方法的参数是Animal类型。即参数animal可以调用实现Animal接口类重写的cry()方法播放具体动物的声音、调用重写的getAnimalName()方法显示动物种类的名称。Animal接口有2个抽象方法cry()和getAnimaName(),即要求实现该接口的各种具体动物类给出自己的叫声和种类名称。图1是Simulator、Animal、Dog、Cat的UML图。(3)编写实现Animal接口的Dog类和Cat类。
2024-04-01 08:45:00
1833
原创 [NOIP2005 普及组] 采药
医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。第一行有 22 个整数 �T(1≤�≤10001≤T≤1000)和 �M(1≤�≤1001≤M≤100),用一个空格隔开,�T 代表总共能够用来采药的时间,�M 代表山洞里的草药的数目。接下来的 �M 行每行包括两个在 11 到 100100 之间(包括 11 和 100100)的整数,分别表示采摘某株草药的时间和这株草药的价值。输出在规定的时间内可以采到的草药的最大总价值。
2024-04-01 08:45:00
656
原创 编写一个完整的Java应用程序。包含接口ShapeArea,类Circle、Main
重写Circle的默认父类Object的toString()方法:返回圆对象的描述信息,如“radius=1.0, perimeter=6.28, area=3.14”double getPerimeter ():求一个形状的周长。重写接口中的getPerimeter ()方法,求圆的周长。②调用对象的toString方法,输出所返回的对象描述信息。double getArea():求一个形状的面积。radius: double类型,表示圆的半径。重写接口中的getArea()方法,求圆的面积。
2024-03-31 08:45:00
366
原创 接口多态编程。需求说明:动物不同运动能力模拟。
(2)Dog类和Bird类都是Movable接口的具体实现类,都重写了void move()方法,Dog类输出“我是小狗,在地上奔跑。”,Bird类输出“我是鸟,在天空翱翔。(3)主类Main,其中包含main方法,模拟接口回调所形成的多态。(1)编写接口Movable,包含有抽象接口方法void move()。我是小狗,在地上奔跑。我是小鸟,在天空翱翔。
2024-03-31 08:45:00
278
原创 编写Java应用程序
(1)定义一个类Computer,包括两个类方法max、average,分别实现求整数数组元素的最大值和平均值的功能。(2)定义一个主类Main,在main方法中给出10个整数,直接用类名调用相应的类方法求它们的最大值和平均值,并输出。
2024-03-30 19:30:20
348
原创 P8681 [蓝桥杯 2019 省 AB] 完全二叉树的权值
现在小明要把相同深度的节点的权值加在一起,他想知道哪个深度的节点权值之和最大?如果有多个深度的权值和同为最大,请你输出其中最小的深度。第二行包含 �N 个整数 �1,�2,⋯ ,��A1,A2,⋯,AN。二叉树节点,由本题目举例,例如A1,A2,A3......,这些称之为节点;在本道题中,我们要清楚什么是节点,什么是权值,什么是深度;深度就是层数,请注意二叉树的层数是由0开始的;第0层的节点数 2的0次方;第1层的节点数 2的1次方;第2层的节点数 2的2次方;第n层的节点数 2的n次方;
2024-03-30 19:17:36
379
原创 P8665 [蓝桥杯 2018 省 A] 航班时间
小 h 前往美国参加了蓝桥杯国际赛。小 h 的女朋友发现小 h 上午十点出发,上午十二点到达美国,于是感叹到“现在飞机飞得真快,两小时就能到美国了”。小 h 对超音速飞行感到十分恐惧。仔细观察后发现飞机的起降时间都是当地时间。由于北京和美国东部有1212小时时差,故飞机总共需要1414小时的飞行时间。不久后小 h 的女朋友去中东交换。小 h 并不知道中东与北京的时差。但是小 h 得到了女朋友来回航班的起降时间。小 h 想知道女朋友的航班飞行时间是多少。
2024-03-30 19:10:53
640
原创 P8772 [蓝桥杯 2022 省 A] 求和
给定 n 个整数 1,2,⋯ ,a1,a2,⋯,an, 求它们两两相乘再相加的和,即S=a1⋅a2+a1⋅a3+⋯+a1⋅an+a2⋅a3+⋯+an−2⋅an−1+an−2⋅an+an−1⋅an。第二行包含 n 个整数 a1,a2,⋯a1,a2,⋯an。输出一个整数 S,表示所求的和。输入的第一行包含一个整数 n。
2024-03-30 19:06:34
336
原创 [蓝桥杯 2023 省 B] 冶炼金属
这个炉子有一个称作转换率的属性 �V,�V 是一个正整数,这意味着消耗 �V 个普通金属 O 恰好可以冶炼出一个特殊金属 X,当普通金属 O 的数目不足 �V 时,无法继续冶炼。现在给出了 �N 条冶炼记录,每条记录中包含两个整数 �A 和 �B,这表示本次投入了 �A 个普通金属 O,最终冶炼出了 �B 个特殊金属 X。根据这 �N 条冶炼记录,请你推测出转换率 �V 的最小值和最大值分别可能是多少,题目保证评测数据不存在无解的情况。接下来输入 �N 行,每行两个整数 �,�A,B,含义如题目所述。
2024-03-27 19:00:31
297
原创 [蓝桥杯 2017 省 AB] 分巧克力
以下 �N 行每行包含两个整数 ��Hi 和 ��Wi。例如一块 6×56×5 的巧克力可以切出 66 块 2×22×2 的巧克力或者 22 块 3×33×3 的巧克力。小明一共有 �N 块巧克力,其中第 �i 块是 ��×��Hi×Wi 的方格组成的长方形。当然小朋友们都希望得到的巧克力尽可能大,你能帮小 ��Hi 计算出最大的边长是多少么?第一行包含两个整数 �N 和 �K。
2024-03-27 18:30:23
1097
2
原创 [蓝桥杯 2019 省 B] 特别数的和
小明对数位中含有 22、00、11、99 的数字很感兴趣(不包括前导 00),在 11 到 4040 中这样的数包括 11、22、99、1010 至 3232、3939 和 4040,共 2828 个,他们的和是 574574。请问,在 11 到 �n 中,所有这样的数的和是多少?输出一行,包含一个整数,表示满足条件的数的和。输入一行包含一个整数 �n。
2024-03-26 22:14:29
601
1
原创 [蓝桥杯 2020 省 AB1] 解码
在这串字母中,有很多连续的是重复的。小明想了一个办法将这串字母表达得更短:将连续的几个相同字母写成字母 + 出现次数的形式。例如,连续的 55 个。为了方便表达,小明不会将连续的超过9个相同的字符写成简写的形式。现在给出简写后的字符串,请帮助小明还原成原来的串。小明有一串很长的英文字母,可能包含大写和小写。输出一个字符串,表示还原后的串。输入一行包含一个字符串。
2024-03-26 08:30:00
149
原创 [蓝桥杯 2020 省 AB1] 解码
在这串字母中,有很多连续的是重复的。小明想了一个办法将这串字母表达得更短:将连续的几个相同字母写成字母 + 出现次数的形式。例如,连续的 55 个。为了方便表达,小明不会将连续的超过9个相同的字符写成简写的形式。现在给出简写后的字符串,请帮助小明还原成原来的串。小明有一串很长的英文字母,可能包含大写和小写。输出一个字符串,表示还原后的串。输入一行包含一个字符串。
2024-03-26 08:00:00
390
原创 [蓝桥杯 2022 省 B] 刷题统计
小明决定从下周一开始努力刷题准备蓝桥杯竞赛。他计划周一至周五每天做 �a 道题目,周六和周日每天做 �b 道题目。请你帮小明计算,按照计划他将在第几天实现做题数大于等于 �n 题?输入一行包含三个整数 �,�a,b 和 �n.输出一个整数代表天数。
2024-03-25 08:15:00
324
原创 [蓝桥杯 2021 省 AB2] 小平方
又如,当 �=5n=5 时, 11,44 的平方除以 55 的余数都是 11,小于 55 的一半。小蓝发现,对于一个正整数 �n 和一个小于 �n 的正整数 �v,将 �v 平方后对 �n 取余可能小于 �n 的一半,也可能大于等于 �n 的一半。例如,当 �=4n=4 时,1,2,31,2,3 的平方除以 44 的余数都小于 44 的一半。请问,在 11 到 �−1n−1 中, 有多少个数平方后除以 �n 的余数小于 �n 的一半。输出一个整数,表示满足条件的数的数量。输入一行包含一个整数 �n。
2024-03-25 08:00:00
165
原创 [蓝桥杯 2021 省 B2] 特殊年份
今年是 2021 年,2021 这个数字非常特殊, 它的千位和十位相等, 个位比百位大 11,我们称满足这样条件的年份为特殊年份。输入 55 行,每行一个 44 位十进制数(数值范围为 10001000 至 99999999),表示一个年份。输出一个整数,表示输入的 55 个年份中有多少个特殊年份。输入 55 个年份,请计算这里面有多少个特殊年份。
2024-03-24 14:17:01
398
原创 [蓝桥杯 2013 省 B] 带分数
100100可以表示为带分数的形式:100=3+69258714100=3+71469258。还可以表示为:100=82+3546197100=82+1973546。注意特征:带分数中,数字11~99分别出现且只出现一次(不包含00)。类似这样的带分数,100100有1111种表示法。
2024-03-24 11:21:38
464
原创 逆序对的数量(c++)
给定一个长度为 n 的整数数列,请你计算数列中的逆序对的数量。逆序对的定义如下:对于数列的第 i 个和第 j个元素,如果满足 ia[j],则其为一个逆序对;否则不是。
2024-02-07 08:00:00
597
原创 我的创作纪念日
刚开始学习c语言时,老师推荐了csdn这个网站进行学习,同时还可以把自己做的题上传上去为后面自己复习,同时也会增加成就感,看到自己刷的题会有满足感。与此同时,还可以收到大佬们的纠正与评价,这是让我最有收获的事。在创作的过程中,我并没有太关注于吸粉这一方面,纯粹是想分享一些做题技巧,能够结识更多的大佬。不过在这一过程中,我收获了60个粉丝,我很满意,以后会继续努力。在进行学习的过程中,如果有好题有意思的题,我会上传到csdn中,与大家一起学习。在有限的精力,我认为还是学习更重要,以创作来辅助学习。
2024-02-06 21:16:27
185
原创 判断回文字符串
注意:本题目求提交包括palindrome函数和裁判测试程序样例在内的所有代码,请一定提交所有的代码!【问题描述】本题要求编写函数,判断给定的一串字符是否为“回文”。所谓“回文”是指顺读和倒读都一样的字。函数palindrome判断输入字符串char*s是否为回文。若是则返回1,否则返回0。如"XYZYX”和"xyzzyx"都是回文。
2023-12-21 08:30:00
571
原创 实验08-1:时间换算
如果用户输入的时间格式不正确(比如:超出合理的小时、分钟或秒数),可能会导致不正确的计算结果。您可以添加输入验证来确保用户提供符合预期的时间的输入格式。当用户输入的时间加上给定的秒数超过了一天的总秒数时,您并没有就此进行处理。这可能会导致超过24小时的输出,这可能不是您想要的结果。【问题描述】用结构体类型表示时间内容(时间以时分秒表示)输入一个时间数据,在输入一个秒数n(n
2023-11-30 11:36:26
917
原创 实验06-6:输出螺旋方阵外边
【问题描述】螺旋方阵,是指对任意给定的n,将1到n×n的数字从左上角第一个格子开始,按顺时针螺旋方向顺序填入n×n的方阵里(向内螺旋)。输入一个正整数,输出螺旋方阵的外边内容(仅输出外边内容,有能力的同学可考虑输出整个螺旋方阵)。总体来说,该程序按特定规律填充二维数组 a[n][n],并以可视化的方式输出数组内容。尽管这段代码完成了特定的填充和输出任务,但其逻辑比较复杂,使用多个循环和条件语句,可读性和维护性较差。创建了一个 n x n 大小的二维数组 a[n][n],并将数组元素初始化为0。
2023-11-24 08:30:00
607
1
原创 选择法排序进阶(使用指针)
在这个修改后的版本中,sort函数接受了一个整数读写的指针int *a和读写的大小n参数,并使用指针操作来进行指针指针的访问和交换。主要的更改是使用指针(如)来访问指针指针,*(a + i)并对它们之前进行比较和交换。其他部分的逻辑与代码类似。今天学到了指针,可是我还是不怎么会运用指针,于是使用了最简单的方法。c++与其类似只需把中间交换函数的部分用swap简便化。
2023-11-23 11:11:18
484
原创 实验05-3:打印正六边形
总体而言,这段代码使用循环和条件语句打印了一个类似菱形的图案,上半部分和下半部分的图案通过不同的循环和条件语句控制打印。接着通过条件语句打印菱形的中间部分,即在最后一行末尾打印一排 @ 符号,之前的行中打印中间的空格和两侧的 @ 符号。接着通过条件语句打印菱形的中间部分,即在第一行末尾打印一排 @ 符号,之后的行中打印中间的空格和两侧的 @ 符号。【问题描述】编写一个程序,输入一个正整数N,在屏幕上用@,打印以N为边长的正六边形。然后在内部循环中,打印空格,空格的数量逐行增加。在每行开始打印一个星号 *。
2023-11-23 08:30:00
374
原创 实验06-7:查找指定字符
总的来说,大概代码演示了如何通过循环遍历字符数组来查找特定字符在字符串中的位置,并输出相应的结果。改进后面的版本修复了使用不安全函数的问题,并进行了输入的处理,提高了代码的健壮性和可靠性。如果找到匹配的字符,输出其在字符串中的位置,索引从1开始,然后将设为0,表示了flag。使用fgets()获取一个字符串,并存储在字符数据库a中,通过fgets()修复了gets()函数可能存在的阵列故障问题。【输出形式】一个整数,说明该字符在字符串中的位置,若无该字符,则显示"Not Found"
2023-11-22 08:30:00
186
1
原创 7.3.3 编程题《统计一组字符串中大写辅音字母的个数》
输入一个以回车结束的字符串(少于80 个字符),统计并输出其中大写辅音字母的个数(大写辅音字母:除A、E、I、O、U 以外的大写字母)。输入提示符后要加一个空格。例如“Input n: ”,其中“:”后要加一个且只能一个空格。英文字母区分大小写。必须严格按样例输入输出。【输入输出样例1】(下划线部分表示输入)输入一个以回车结束的字符串。
2023-11-21 18:48:12
766
1
原创 实验06-8:字符串转换成十进制整数
总的来说,设想代码旨在读取输入字符,并尝试将这些字符解释为十六进制数的表示,将其转换为十进制并累加,最后输出累加结果。但需要注意的是,此代码在处理负数和负号位置时可能存在一些逻辑上的问题,特别是在寻找负号位置的位置。结束的字符串,滤去所有的非十六进制字符(不分大小写),组成一个新的表示十六进制数的字符串,然后将其转化为十进制数后输出。中的字符进行处理,根据字符的类型(字母或数字),计算其对应的十进制数值。中的字符,筛选出可能构成十六个轮数的字符,并存储到阵列。中,该数据库用于保存可能构成十六个字符的字符。
2023-11-21 18:28:34
563
1
原创 输入2个正整数a和n,求a+aa+aaa+aa...a(n个a)之和。
输入2个正整数a和n,求a+aa+aaa+aa...a(n个a)之和。例如,输入2和3,输出246(2+22+222)。输入提示符后要加一个空格。其中":"后要加一个且只能一个空格。英文字母区分大小写。必须严格按样例输入输出。【输入输出样例1】(下划线部分表示输入)从键盘输入正整数a和正整数n。输出语句的"="两边无空格。
2023-11-02 11:22:01
2680
原创 1455 - 拍皮球
小瑜3岁了,很喜欢玩皮球,看来今后喜欢打篮球的^_^。最近她发现球从手中落下时,每次落地后反跳回原高度的一半,再落下,每次球落地时数球跳了几次,数到n次时爸爸在边上喊停,问小瑜现在球到底总共走了多少距离,小瑜故作沉思状,爸爸又问接下来小球能跳多高啊,小瑜摇摇头,心想还没跳我怎么知道啊,难道爸爸是神啊!这时的你在边上出主意想给小瑜写个程序计算一下,因此任务就交给你啦!假设球的初始高度为h,计算第�n次落地时球经过的距离,以及落地后反弹能有多高。
2023-11-01 22:44:39
74
1
空空如也
逆序输出c语言问题111111
2023-12-19
TA创建的收藏夹 TA关注的收藏夹
TA关注的人