自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 进制转换(c++)

接下来是十进制转换成其他进制,一般都是用连除法,即这个数每次都除以要转换的进制数,记录下来余数,再将得到的结果继续除,直到得到的结果为0停止,此时记录下来的余数,最开始记的是低位,也就是在最右边,最后面记的是高位,也就是最左边。2.由于其他进制可能原本包含字母(比如16进制就包含A,B,C,D,E,F),所以形参用string来接收,base是本来的进制数,比如16进制转换成10进制,base就是16。3.这里的做法是从高位开始取,也就是从s的下标0开始,字符串的左边是高位,右边是低位,为什么这样做呢?

2025-03-22 17:49:36 550

原创 P5117 [USACO18DEC] The Bucket List B

也就是说,一个在第 i 头奶牛挤奶时用的桶不可以被任何在时间 si​ 到时间 ti​ 之间挤奶的其他奶牛使用。当奶牛 2 在时间 8 开始挤奶时,桶 1 和桶 2 可以再次利用,然而桶 3 不可以,所以他会使用桶 1、桶 2 和桶 4。在他的挤奶策略中,当某一头奶牛(比如说,奶牛 i)开始挤奶(在时间 si​),FJ 就跑到储藏室取出编号最小的 bi​ 个桶分配给第i头奶牛用来挤奶。1000 之间的整数,bi​ 为 1。可以看出,在8,9,10这三个时间点存在的桶是最多的,那最多用到的桶就是4个。

2025-03-19 21:51:26 314

原创 4. 移动到末尾(蓝桥云课)

这种方法对性能的开销大,因为要移动数组,数组如果很大就不好了,当然对于这道题数字很小,可以这么做。这种方法有一个值得注意的点,就是当0连续存在的时候,你需要做一些保守的判断,不然会遗漏掉0.int main()// 请在此输入您的代码int n;cin >> n;int arr[n];//统计0出现了多少次i < n;i++)//读入i++) //这里i要走过n-cnt个,把0排除掉,不然进入死循环j < n - 1;j++) {i--;

2025-03-19 19:55:40 343

原创 6-20 花鸟虫鱼市场*(PTA)

返回值类型(ps:如果是构造和析构就没有返回值类型)类名::成员函数名(形参){ }

2025-03-17 20:40:53 990

原创 6-16 我自己写字符串类(基础版)(PTA)

今天写的题目虽然不是很难但很考验基本语法,由于是基本语法,所以我会讲的比较细,题目要求补全类内成员函数的定义,使得满足输入和输出要求。说实话,写的有点折磨,主要是c语言风格的字符串char* 太久没用了,忘了挺多,这道题相当于复习一遍语法知识吧,我会从上往下一个一个讲解函数定义,废话不多说,开始讲解。

2025-03-13 20:54:08 697

原创 P8597 [蓝桥杯 2013 省 B] 翻硬币

表示我们的每次操作会反转两个硬币,这里我模拟了人们日常中反转硬币的思维和利用计算机顺序检索的思维(讲的比较抽象,代码能理解就行)想到可以按一个顺序(我就从左向右了),比较字符串s1和s2的局部是否相等,不相等的话我们反转过来,并且让下一个硬币也反转,遍历整个字符串一遍即可得出答案。那么按照前面的思想,从不相同的硬币开始反转,反转到下一个不相同的硬币,这一段路程中,那些中间硬币实际被反转了两遍(也就相当于没有反转),那我们可以省略模拟这部分过程,直接找到这两个不相同硬币之间反转了多少遍。

2025-03-12 19:15:37 248

原创 P11041 [蓝桥杯 2024 省 Java B] 报数游戏

前 10 个被报出的数是:20,24,40,48,60,72,80,96,100,120。本题的结果为一个整数,在提交答案时只输出这个整数,填写多余的内容将无法得分。与24的关系: 24*1 24*2 24*3 24*4。4.枚举找规律,把偶数位出现的数字和24联系在一起,看看它们有什么关系。看到这个表,能得到一个很简单的关系:24*(位数/2) = 出现的数字。1.前10个数中,有5个是20的倍数,有5个是24的倍数。2.20的倍数总在奇数,24的倍数总在偶数。

2025-03-11 22:02:27 241 3

原创 P10985 [蓝桥杯 2023 国 Python A] 整数变换

例如,如果小蓝开始时的数为 23,则下一分钟变为 23−(2+3)=18,再下一分钟变为 18−(1+8)=9,再下一分钟变为 9−9=0,共经过了 3 分钟变为 0。小蓝有一个整数 n。每分钟,小蓝的数都会发生变化,变为上一分钟的数 减去上一分钟的数的各个数位和。给定一个正整数,请问这个数多少分钟后变为 0。对于 30% 的评测用例,1≤n≤1000;对于 60% 的评测用例,1≤n≤106;对于所有评测用例,1≤n≤109。输入一行包含一个整数 n。输出一个整数,表示答案。按题意模拟代码过程就行了。

2025-03-11 21:51:20 161

原创 P10984 [蓝桥杯 2023 国 Python A] 残缺的数字

写一个循环,从0~7,遍历这些码的每一个二进制数字,拿爱码依次和0~9这10个数字码比较,如果这个时候爱码是1而数字的码是0,那这个爱码就不可能是这个数字。外层循环是遍历0~9这10个数字一遍,内层则是每个数字的8个二进制数字,里面要做判断比较,就像判断质数一样,管你是不符合要求直接break,到时候观察k这个数字有没有走完来判断是否合法,还是在break之前插一个flag,通过这个flag的值变化判断是否合法,反正只要能证明合法性就行,最后返回cnt(每个爱码有几种可能)就行。一行一个整数表示答案。

2025-03-11 21:37:26 961

原创 P8761 [蓝桥杯 2021 国 BC] 大写

给定一个只包含大写字母和小写字母的字符串,请将其中所有的小写字母转换成大写字母后将字符串输出。蓝桥杯 2021 国赛 B 组 E 题(C 组 E 题)。对于所有评测用例, 字符串的长度不超过 100。一般的写法,遍历下标,遇到小写就更改。方便的写法,用toupper函数。输出转换成大写后的字符串。输入一行包含一个字符串。

2025-03-10 19:02:03 157

原创 P8752 [蓝桥杯 2021 省 B2] 特殊年份

今年是 2021 年,2021 这个数字非常特殊, 它的千位和十位相等, 个位比百位大 1,我们称满足这样条件的年份为特殊年份。输入 5 个年份,请计算这里面有多少个特殊年份。

2025-03-09 17:25:44 278

原创 P8722 [蓝桥杯 2020 省 AB3] 日期识别

拿到的时候想,这题不就是个映射吗,给的输入也这么标准,用map存储一下,再用string容器里面的成员函数转换一下就行。英文形式采用每个月的英文的前三个字母作为月份标识,后面跟两位数字表示日期,月份标识第一个字母大写,后两个字母小写, 日期小于 10 时要补前导 0。数字形式直接用两个整数表达,中间用一个空格分隔,两个整数都不写前 导。在小蓝处理的日期中有两种常用的形式:英文形式和数字形式。输入一个日期的英文形式, 请输出它的数字形式。输出一行包含两个整数,分别表示日期的月和日。输入一个日期的英文形式。

2025-03-09 17:13:16 172

原创 P8717 [蓝桥杯 2020 省 AB2] 成绩分析

小蓝给学生们组织了一场考试,卷面总分为 100 分,每个学生的得分都是一个 0 到 100 的整数。接下来 n 行,每行包含一个 0 至 100 的整数,表示一个学生的得分。蓝桥杯 2020 第二轮省赛 A 组 F 题(B 组 F 题)第三行包含一个实数,四舍五入保留正好两位小数,表示平均分。输入的第一行包含一个整数 n,表示考试人数。对于 50% 的评测用例, 1≤n≤100。对于所有评测用例, 1≤n≤10000。第一行包含一个整数,表示最高分。第二行包含一个整数,表示最低分。

2025-03-09 16:46:15 239

原创 P8711 [蓝桥杯 2020 省 B1] 整除序列

有一个序列,序列的第一个数是 n,后面的每个数是前一个数整除 2,请输出这个序列中值为正数的项。

2025-03-09 16:20:59 313

原创 P8706 [蓝桥杯 2020 省 AB1] 解码

小明有一串很长的英文字母,可能包含大写和小写。在这串字母中,有很多连续的是重复的。小明想了一个办法将这串字母表达得更短:将连续的几个相同字母写成字母 + 出现次数的形式。例如,连续的 5 个a,即aaaaa,小明可以简写成a5(也可能简写成a4aaa3a等)。,小明可以简写成H3el5o2。为了方便表达,小明不会将连续的超过9个相同的字符写成简写的形式。现在给出简写后的字符串,请帮助小明还原成原来的串。

2025-03-09 16:10:06 465

原创 P8680 [蓝桥杯 2019 省 B] 特别数的和

小明对数位中含有 2、0、1、9 的数字很感兴趣(不包括前导 0),在 1 到 40 中这样的数包括 1、2、9、10 至 32、39 和 40,共 28 个,他们的和是 574。请问,在 1 到 n 中,所有这样的数的和是多少?

2025-03-09 11:17:27 442

原创 P4924 [1007] 魔法少女小Scarlet(c,c++)(超详解)

讲讲我的规律是怎么找的,我们知道要想遍历一个二维数组,常用的就是写两个for循环,遍历的顺序从左上角开始,一直往右走,到底后从第二行开始,再一直往右走,以此到最后一行。是有深意的,这意味着以x,y为中心的位置从左边开始和从右边开始长度是一样的,从上边开始和从下边开始的长度也是一样的,那你猜猜,1.将temp的起始坐标定在了圈起来的小区域的左下角,也就是我们的x+r和y-r。

2025-03-05 18:56:21 1001 1

原创 P1563 [NOIP 2016 提高组] 玩具谜题【洛谷】

初看并理解题目之后,就会发现这是一个很典型的“转圈”问题,以后可能会遇到很多,如果用数组处理,难点就在于边界的控制,我见识到的两种算法,一种是比较简单好想的,以下代码中会用到,令一种就是用%来计算了(这个我不太懂,就不献丑了,有兴趣大家可以去学,或者懂的话评论区教教我)。小南发现,这个谜题中玩具小人的朝向非常关键,因为朝内和朝外的玩具小人的左右方向是相反的:面朝圈内的玩具小人,它的左边是顺时针方向,右边是逆时针方向;输出一个字符串,表示从第一个读入的小人开始,依次数完 m 条指令后到达的小人的职业。

2025-03-03 19:29:37 597

原创 B3843 [GESP202306 三级] 密码合规(洛谷)(c语言)

2.这点折磨了我挺久的,就是写完后发现自己的代码一直是RE的状态,毕竟编译器上运行没有问题,调试也找不出来,后面怎么发现的呢?发现我箭头所指的值不是0,那就是程序跑的过程中崩溃了,原来是我没有考虑到输入的字符串中最后的位置是没有英文逗号的,而我没有加上判断(以下为出错原代码)ps:由于我是用c语言写的,那就按照c的思路来分析,代码应该可以再优化或者有其他写法,大家有其他意见也可以分享一下,不多说,先上代码。大写字母,小写字母和数字必须至少有其中两种,以及至少有四个特殊字符中的一个。

2025-01-15 10:39:01 376

原创 PTA习题8-6删除字符(20分)(两种思路)

其中char *str是传入的字符串,c是待删除的字符。函数delchar的功能是将字符串str中出现的所有c字符删除。

2025-01-11 10:59:13 343

空空如也

空空如也

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

TA关注的人

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