奋斗中的小美
奋斗中的小美
全部文章
分类
归档
标签
去牛客网
登录
/
注册
奋斗中的小美的博客
TA的专栏
53篇文章
0人订阅
计算机复试机试(王道版)
53篇文章
112人学习
全部文章
(共43篇)
题解 | 最长公共子序列(一)
来自专栏
练习动态规划,思路:dp[i][j]:表示是s1的前缀长度为i,s2的前缀长度为j时的最长公共子序列长度(不要求连续)1.边界初始化:s1的前缀长度为0,或s2的前缀长度为0时,最长公共子序列长度是02.小问题向大问题转移:若s1和s2的上一次对比元素相等,则在这次的dp值+1;若不等,则取两者相比...
2026-02-14
0
7
题解 | 放苹果
来自专栏
动态规划的入门练习 #include<stdio.h> #include<vector> using namespace std; int main() { int m, n; while (scanf("%d%d", &m, &...
2026-02-14
0
8
题解 | 还是畅通工程
来自专栏
思路:构造最小生成树,即保证所有顶点连通(间接也可以)+边的权值最小。可用克鲁斯克拉算法求生成树:每次选权值最小的边,判断若边所在的两个顶点不连通则加入树中,否则跳过该边,一直到树构建完成(特征是边数=顶点个数-1)。 #include <cstring> #include<std...
2026-02-10
0
21
题解 | 畅通工程
来自专栏
思路:考察并查集的基本操作,根据题目要求构建并查集,初始化并查集个数为城镇个数,依次输入道路合并,最后需要建设的道路数目为并查集个数-1:合并到最后只有1个并查集,则说明集合内结点相互连通,不用建路;合并到最后只有2个并查集,之间要建1条路才连通;合并到最后只有3个并查集,之间要建2条路才连通; #...
2026-02-08
0
19
题解 | 玛雅人的密码
来自专栏
思路:采用广度优先遍历,每次从队列头拿出一个字符串,检查,然后生成所有可能的“下一代”字符串放回队列尾部这样,先入队的(移动步数少的)一定会先被处理,保证了找到的第一个解就是步数最少的解。存放待处理的字符串——队列;找子串——find;记录哪些字符串已经处理过了(防止走回头路,比如从 A 变到 B,...
2026-02-05
0
28
题解 | 复数集合
来自专栏
优先队列:默认大根堆,重载运算符的比较规则有点绕 #include<stdio.h> #include<string> #include<queue> using namespace std; struct Complex { int a; int...
2026-02-04
0
28
题解 | 整数奇偶排序
来自专栏
按题目要求改写比较规则,利用sort排序动态数组 #include<stdio.h> #include<vector> #include<algorithm> using namespace std; //修改比较规则 bool compare(int l,in...
2026-02-04
0
23
题解 | Candy Sharing Game
来自专栏
#include<stdio.h> #include<vector> using namespace std; //判断是否相等,注意& bool isSame(vector<int> &vec) { for (int i = 0; i &...
2026-02-04
0
29
题解 | 完数VS盈数
来自专栏
#include<stdio.h> #include<vector> #include<math.h> using namespace std; int yinziSum(int n){ int sum=0; for(int i=1;i<n...
2026-02-04
0
25
题解 | 剩下的树
来自专栏
#include<stdio.h> #include<vector> using namespace std; //注意区间可能有重叠 int main(){ int L,M; int begin,end,cnt=0; scanf("%d %...
2026-02-04
0
22
首页
上一页
1
2
3
4
5
下一页
末页