- 博客(19)
- 收藏
- 关注
原创 关于近期算法学习的反思
2024年4月13日13:30分,奋战到最后从考场走了出来。这300块,得让它花得值一点。钱花多花少不重要,关键是值不值。现在来讲讲你一直以来算法上的学习问题:总是执着于记录下自己犯的小错误,而忽略了整体算法思维的侧重;致使自己总是被一些小问题的博客记录而拖慢学习进度。其实这些所谓细节自己脑子里有个印象就可以,不必大张旗鼓的把他们记录下来,我要学的是计算方法,不是如何写代码。经常性自习室坐一天半天就做出来一题,甚至是一个Bug都没de完。
2024-04-13 17:29:40 438
原创 PTA基础模拟+结构体的应用(DeBug:算法实现与算法设计的不一致)
代码真的要步步有依据啊,跟数学题一样,步步不能错,步步要清晰,步步有依据。看来,程序员的玩具鸭真有来头🤣🤣🤣当自己的代码有问题,先静下心来,不要觉得不耐烦,自己本来就是以一个不耐烦的心理状况写的,代码自然就不严谨,问题自然就多,这是自己造成的,现在就应该好好理理思路,想清楚每一步代码的逻辑和依据,先看自己代码实现是否符合自己思路,再考虑思路问题。
2024-04-10 22:03:59 994 1
原创 关于上一题DFS残垣断壁的其他解法
每次看前后两个位置,前一个符合就入队,后一个符合继续入队,当后一个不符合,前面入队的全部以一组的形式放进二维容器中,作为柱状统计图的一列;最后二维容器的列数就是连续的块数。题目由于重力效应,不会出现浮空现象,故所有连通块必然和地面接壤,所有连通块的分割必然是垂直分割,故,连通块数等于最后一行的连通块数。由分析可以很明显的看出:可以大幅剪枝,dfs的范围缩减为一行,探索分支由4变为2。用一个布尔变量来表示指针所在位置的状态,在发生变化(脉冲)时累计次数。,通过滚动的形式完成了对线段连续性的判断——
2024-04-08 20:16:48 605 1
原创 PTAstring的各种操作函数
分数 15作者 DAI, Longao单位 杭州百腾教育科技有限公司使用计算机进行文本编辑时常见的功能是剪切功能(快捷键:Ctrl + X)。请实现一个简单的具有剪切和粘贴功能的文本编辑工具。abcdefgcdeabfgbfgabfcdeg每次操作后的字符串即为新的当前字符串。在若干次操作后,请给出最后的编辑结果。
2024-04-07 00:21:22 621
原创 PTA模拟基础题——逻辑判断树
L1-5 猜帽子游戏分数 15作者 陈越单位 浙江大学宝宝们在一起玩一个猜帽子游戏。每人头上被扣了一顶帽子,有的是黑色的,有的是黄色的。每个人可以看到别人头上的帽子,但是看不到自己的。游戏开始后,每个人可以猜自己头上的帽子是什么颜色,或者可以弃权不猜。如果没有一个人猜错、并且至少有一个人猜对了,那么所有的宝宝共同获得一个大奖。如果所有人都不猜,或者只要有一个人猜错了,所有宝宝就都没有奖。下面顺序给出一排帽子的颜色,假设每一群宝宝来玩的时候,都是按照这个顺序发帽子的。
2024-04-06 15:17:49 270
原创 洛谷简单模拟+简单数论
第一个数表示[1,n]内幸运数的个数,第二个数是表示其中最大的幸运数,如果这个范围不存在幸运数,则输出N0。请你计算1~n的正整数中有多少个幸运数?并输出这个范围内最大的幸运数。1.所有的数位和是6的倍数。2.数位中至少包含1个6。
2024-04-01 12:13:45 322
原创 第十四届蓝桥杯省赛Java A组/C组——平均(贪心算法)
故!本体关键:判断条件:if(mp[ab[i].first]>n/10){//ai重复次数大于n/10局部变量的初始化而贪心思想还是体现在对二元组的排序上
2024-03-28 17:43:41 616
原创 第十四届蓝桥杯省赛C++ C组——三国游戏(贪心算法)
闲言少叙,解决算法题,可以利用数学思维来将问题转化,这是非常聪明的做法,算法题本来就应该这么做。而不是无脑的去暴力枚举,毫无思维技巧性可言。所谓的思维技巧,都是想让解决问题的方法更快速,更全面。
2024-03-27 21:54:59 618 2
原创 算法学习代码记录7-9 人以群分
题目来源:第二轮团体程序设计天梯赛选拔赛PTA7-9 人以群分社交网络中我们给每个人定义了一个“活跃度”,现希望根据这个指标把人群分为两大类,即外向型(outgoing,即活跃度高的)和内向型(introverted,即活跃度低的)。要求两类人群的规模尽可能接近,而他们的总活跃度差距尽可能拉开。
2024-03-27 15:35:56 479
原创 BFS——求边权值为1的最小步数模型
在一个 3×33×3 的网格中,1∼81∼8 这 88 个数字和一个x恰好不重不漏地分布在这 3×33×3 的网格中。在游戏过程中,可以把x与其上、下、左、右四个方向之一的数字交换(如果存在)。例如,示例中图形就可以通过让x先后与右、下、右三个方向的数字交换成功得到正确排列。现在,给你一个初始网格,请你求出得到正确排列至少需要进行多少次交换。
2024-03-27 09:48:54 246
原创 算法学习代码记录7-7 古风排版
题目来源:第二轮团体程序设计天梯赛选拔赛PTA7-7 古风排版中国的古人写文字,是从右向左竖向排版的。本题就请你编写程序,把一段文字按古风排版。
2024-03-27 00:41:28 39
原创 算法学习代码记录7-11 悄悄关注
题目来源:第二轮团体程序设计天梯赛选拔赛新浪微博上有个“悄悄关注”,一个用户悄悄关注的人,不出现在这个用户的关注列表上,但系统会推送其悄悄关注的人发表的微博给该用户。
2024-03-25 21:07:48 68
原创 蓝桥杯算法学习纪实——费解的开关
一开始暴力枚举,是因为,为了实现目标,我们没有根据来指导做出第一步和下一步,不知道怎样的方案能使得灯全被按亮,所以穷举所有方案再判断哪些可以,再取其中步数最小的;而后面第二行开始不再暴力枚举,是因为下一步有了根据,按照这个规则一定就能实现全局的目标。所以其中也有局部最优解的思想,即,贪心;同时,完成 5 次分支后,不在进行不必要的分支,这也是剪枝的思想。
2024-02-29 17:45:06 1088
原创 蓝桥杯算法学习纪实——递归实现排列型枚举
总结: 递归最大的好处就是可以回溯; 多分枝搜索树利用回溯法遍历,正是利用了递归的“回溯特性”,使得各分支都能得到不重不漏的遍历; 而递归有几个关键点:1、顺序;2、底;3、相同的操作。
2024-02-06 23:09:14 936
原创 蓝桥杯算法学习纪实——递归实现指数型枚举
就类似二叉树的先根序遍历,区别就在于DFS每步的选择能不相同,但需要判断每步是否还有选择,没有其他选择则回归,有则继续下一步(往深处“搜索”)。这就像”树“的层次结构一样,每往下一层,就多一个结点,就多选一个数字,所以有多少个数,“树”就有几层。我们会发现,每递推到一个分支的底部,就会得到一个完整信息,那我们在递归函数回归前,加入输出代码,便能实现每递归完一个分支就输出一种结果,直至递归结束,所有结果输出完成。在这里,“每个数字是否被挑选”,描述的是一种状态,每个数字的选择状态,,每个结点保存这些状态。
2024-01-27 22:29:36 387 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人