- 博客(104)
- 收藏
- 关注
原创 C++面向对象 继承
语法:class 子类:继承方式 父类1,继承方式 父类2...如果在多继承中引发同名成员出现,需要加作用于区分。作用:允许一个类继承多个类。
2025-05-07 20:38:50
331
原创 C++面向对象 const修饰成员函数 常对象 常函数
常函数保证不会修改对象的成员变量(除mutable成员变量外)。常对象只能调用常函数,不能调用非const成员函数。mutable关键字允许在常函数中修改特定的成员变量。
2025-04-26 18:08:18
411
原创 C++面向对象(构造函数)
一个类中可以定义多个构造函数,以便对类对象提供不同的初始化方法,这些构造函数必须有相同的名字,而参数列表却不能相同,即参数的个数或者类型不同private:int h;int m;int s;public:// 无参构造函数,将时间初始化为 0 时 0 分 0 秒Time() {h = 0;m = 0;s = 0;// 带一个参数的构造函数,将小时初始化为指定值,分钟和秒初始化为 0h = hour;m = 0;s = 0;
2025-04-26 10:08:41
281
原创 0 1背包问题 完全背包问题
有 N件物品和一个容量是 V 的背包。每件物品只能使用一次。第 i件物品的体积是 vi,价值是 wi。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。输出最大价值。
2025-04-04 13:58:46
251
原创 ACM第二次排名赛
除了读取地图的行数、列数、地图信息以及起点和终点坐标外,还增加了对传送门信息的读取。,它的作用是记录传送门的数量,这表明当前代码支持处理多个传送门的情况。检查新位置:如果新位置在网格内、未被访问过且在当前时间。(取最小值,确保每个位置只记录最早出现障碍物的时间)。(表示时间),用于在 BFS 中记录位置和时间信息。的字符串,并且字符串中的每个字符都初始化为字符。数组初始化为很大的值(表示无障碍物),将。标记新位置已访问,并将新位置及其时间。次,每次读取一个传送门的入口坐标。次,每次读取一个障碍物的位置。
2025-03-30 16:59:35
914
1
原创 欧拉筛/线性筛素数(数论)
这行代码是线性筛法(欧拉筛法)的核心优化部分,它的作用是确保每个合数都只会被它的最小质因数筛去,避免重复标记。通过这个判断保证了每个合数只会被它的最小质因数筛去,实现了线性筛法的高效性。欧拉筛法的基本思想是每个合数只被它的最小质因子筛掉一次,从而避免了重复筛选。数组位置标记为 1,代表该数已经确定为合数。的最小质因数,若继续循环,后续得到的乘积。的值与每一个记录的素数相乘,并将乘积。循环,每次遍历每一个记录下来的素数。是否为 0,如果为 0,则证明。数组中,并更新记录质数的数量。是其最小质因数),却会被。
2025-03-25 21:04:46
197
原创 快速幂(数论)
指数是奇数, 4 * 256^1=4 * 256 * 256^0。指数为0时停止,那么答案就是计算 4 * 256 = 1024。1、当指数是偶数时,我们可以让指数除以2,底数乘以底数。指数是偶数,4 * 16^2 = 4 * 256^1。指数是偶数, 4 * 4^4 = 4 * 16^2。2、当指数是奇数时,我们可以将指数变为偶数。指数是奇数,4^5 = 4 * 4^4。” 的结果是否为 1,能够确定整数。指数是偶数,2^10 = 4^5。在程序中通过判断 “
2025-03-24 20:53:48
205
原创 ACM第一次排名赛
示例中 v 为 {1, 2, 3, 4, 5, 6, 7, 8, 9},会找到元素 5,并输出 5。例如,对于序列 {1, 3, 3, 5},lower_bound 查找 3 时返回第二个 3 的位置,而 upper_bound 查找 3 时返回 5 的位置。与 upper_bound 的区别:lower_bound 返回第一个大于或等于给定值的元素位置,而 upper_bound 返回第一个大于给定值的元素位置。在 C++ 里,对于一个整数类型的变量,没办法直接访问它的每一位数字。(枚举 映射计数法)
2025-03-23 00:29:38
1051
原创 数字的目标和(回溯)
回溯算法,一种通过探索所有可能的候选解来找出所有的解的算法。它采用试错的思想,它尝试分步的去解决一个问题。在分步解决问题的过程中,当它通过尝试发现现有的分步答案不能得到有效的正确的解答的时候,它将取消上一步甚至是上几步的计算,再通过其它的可能的分步解答再次尝试寻找问题的答案。回溯法找到一个可能存在的正确的答案;在尝试了所有可能的分步方法后宣告该问题没有答案。
2025-03-10 22:25:25
570
原创 (二分)机器人跳跃问题
机器人正在玩一个古老的基于 DOS 的游戏。游戏中有 N+1 座建筑——从 0 到 N 编号,从左到右排列。编号为 0 的建筑高度为 0个单位,编号为 i 的建筑高度为H(i) 个单位。起初,机器人在编号为 0 的建筑处。每一步,它跳到下一个(右边)建筑。假设机器人在第 k个建筑,且它现在的能量值是 E,下一步它将跳到第 k+1 个建筑。如果 H(k+1)>E,那么机器人就失去 H(k+1)−E 的能量值,否则它将得到 E−H(k+1)的能量值。
2025-01-24 18:03:52
516
原创 (数据结构)双链表
现在要对该链表进行 M次操作,进行完所有操作后,从左到右输出整个链表。:题目中第 kk 个插入的数并不是指当前链表的第 k 个数。例如操作过程中一共插入了 nn个数,则按照插入的时间顺序,这 n个数依次为:第 1个插入的数,第 2 个插入的数,…第 n 个插入的数。
2025-01-22 23:38:31
535
原创 (数据结构)单链表
现在要对该链表进行 M次操作,进行完所有操作后,从头到尾输出整个链表。:题目中第 k 个插入的数并不是指当前链表的第 k 个数。例如操作过程中一共插入了 n 个数,则按照插入的时间顺序,这 n 个数依次为:第 1 个插入的数,第 22个插入的数,…第 n 个插入的数。
2025-01-22 19:52:30
668
原创 猴子选大王
一群猴子要选新猴王。新猴王的选择方法是:让N只候选猴子围成一圈,从某位置起顺序编号为1~N号。从第1号开始报数,每轮从1报到3,凡报到3的猴子即退出圈子,接着又从紧邻的下一只猴子开始同样的报数。如此不断循环,最后剩下的一只猴子就选为猴王。请问是原来第几号猴子当选猴王?输入在一行中给一个正整数N(≤1000)在一行中输出当选猴王的编号。
2024-12-08 20:57:30
210
原创 Hello World Here I Come与Come I Here World Hello
测试输入包含一个测试用例,在一行内给出总长度不超过500 000的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用若干个空格分开。每个测试用例的输出占一行,输出倒序后的句子,并且保证单词间只有1个空格。
2024-12-08 20:24:15
277
2
原创 实数取整(指针专题)
题目描述读入一个实数,输出实数的整数部分。注意该实数的位数不超过100位。输入的整数部分可能含有不必要的前导0,输出时应去掉,当然,若整数部分为0,则该0不能去掉。如输入0023.56732,输出应为23,而不是0023;0.123对应的输出应为0。当然输入也可能不含小数部分。要求定义并使用rounding()函数,原型如下://将字符串p表示的实数取整后生成新的字符串,并由函数返回输入描述输入一个实数.输出描述输出整数部分。
2024-11-29 16:09:56
276
原创 选票统计(二)(结构体专题)
题目描述计算机与通信工程学院2012届学生会主席投票选举工作定于1月6日在电教楼前隆重举行。本次投票将采用电脑统计选票的方式,当投票选举正式开始后,同学们将排队一一走到电脑前,投上自己神圣的一票:在电脑前输入一个姓名,然后输入回车表示确认。当所同学投票结束,工作人员只需要输入一个”#”并回车确认,表示投票结束,电脑立即显示出得票最高的同学姓名,该同学将当选为新一届计算机与通信工程学院学生会主席。选举大会的准备工作正在紧张进行,编程统计投票的工作就交给你了。输入描述本题为单实例测试。
2024-11-29 14:49:39
323
2
原创 考试排名(一)(结构体专题)
题目描述今天浙大研究生复试的上机考试跟传统笔试的打分规则相似,总共有n道题,每道题有对应分值,最后计算总成绩。现给定录取分数线,请你写程序找出最后通过分数线的考生,并将他们的成绩按降序打印。输入描述第1行给出考生人数N ( 1
2024-11-29 11:29:34
662
原创 单科成绩排序(结构体专题)
题目描述有一学生成绩表,包括学号、姓名、3门课程成绩。请按要求排序输出:若输入1,则按第1门课成绩降序输出成绩表,若输入为i(1
2024-11-29 09:38:06
238
原创 总成绩排序(结构体专题)
题目描述有一学生成绩表,包括学号、姓名、3门课程成绩。请按如下规则排序:按总成绩降序排序,若总成绩相同,则按姓名升序排序。输入描述首先输入一个整数n(1
2024-11-26 13:41:40
297
原创 选票统计(一)
某单位进行选举,有5位候选人:zhang、wang、zhao、liu、miao。编写程序,统计每人所得的票数。要求每人的信息里包括两部分:name和votes,分别描述姓名和所得票数。每个人的信息用一个结构体来表示,5个人的信息使用结构体数组。输出5行,按zhang、wang、zhao、liu、miao的顺序输出5个候选人的姓名和所得票数,用空格隔开。首先输入一个整数n,表示n张选票,接下来n行,每行是一个由小写英文字母组成的字符串,表示以上5个候选人之一。
2024-11-26 10:16:37
792
原创 平面点排序(二)(结构体专题)
题目描述平面上有n个点,坐标均为整数。横坐标相同时按纵坐标排序,否则按横坐标排序。本题要求用结构体存储坐标,再进行排序。先升序排序输出,再降序排序输出,可以自己写排序函数,也可以用qsort库函数排序。输入描述输入有两行,第一行是整数n(1
2024-11-26 09:29:05
419
原创 已知两点的坐标求中点坐标
给出两个点的坐标,请你求出这两个点的连线的中点的坐标,请用函数和结构体编写代码。你可以假定数据范围再int范围内。请定义点结构体 struct point ,并使用函数实现,即函数返回值类型 为 point 类型。两行,两点坐标x,y,用空格隔开。中点坐标x,y,用空格隔开。
2024-11-25 16:57:44
1083
原创 平面点排序(二)(结构体专题)
平面上有n个点,坐标均为整数。横坐标相同时按纵坐标排序,否则按横坐标排序。本题要求用结构体存储坐标,再进行排序。先升序排序输出,再降序排序输出,可以自己写排序函数,也可以用qsort库函数排序。输入有两行,第一行是整数n(1
2024-11-24 12:06:02
851
原创 平面点排序(一)(结构体专题)
平面上有n个点,坐标均为整数。请按与坐标原点(0,0)距离的远近将所有点排序输出。可以自己写排序函数,也可以用qsort库函数排序。输入有两行,第一行是整数n(1
2024-11-24 11:33:25
358
原创 按出生日期排序(结构体专题)
送人玫瑰手有余香,小明希望自己能带给他人快乐,于是小明在每个好友生日的时候发去一份生日祝福。小明希望将自己的通讯录按好友的生日排序排序,这样就查看起来方便多了,也避免错过好友的生日。输入n个好友的信息,按生日的月份和日期升序输出所有好友信息。首先输入一个整数n(1
2024-11-23 21:16:45
210
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅