自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 1013 Battle Over Cities (25 分)

题目要求:一个连通图,删除某个点后,求需要加多少新的路径,使其重新变为连通图 思路:可以用并查集解决,根据题目的输入,将包含要删除点的边删除,统计图有几个集合,n个集合需要n-1条边连接(注意减去删除边的那个集合),找父节点可能需要进行路径压缩,否则最后测试点会超时 #include<cstdio> #include<iostream> #include<vector> #include<map> using namespace std; const i

2022-02-17 20:11:41 418

原创 1009 Product of Polynomials (25 分)

题目要求:多项式相乘,总体思路是双层循环,前一个多项式的每一项都和第二个多项式的n项相乘,根据指数,累加其系数 总体难度不大,但有几个细节:系数和指数可以用map<int, double>存储,默认值为0 如果计算某一项发现系数为0了,直接删除该指数的map即可 最后需要倒序输出,因为map会对键从小到大排序,和题目相反 map倒序输出可以使用reverse_iterator #include<cstdio> #include<iostream> #inclu

2022-02-16 21:20:15 251

原创 1007 Maximum Subsequence Sum (25 分)

题目要求:求最长子串和,很经典的动态规划问题,注意题目要求输出的时最大和以及该最大子串的首位元素(不是元素下标) 动态规划方程: res[i] = num[i] or num[i] + res[i-1] 解释:求i下标位置的最大子串只有两种可能,如果前面一个最大子串+当前元素比当前元素大,那么子串就等于前一个+当前元素,如: 1,2,3 res[1] = res[0]+num[1] = 1+2 = 3 否则,说明加上前面的会让当前最大和变小,那就不加,从当前位置重新累计最大和,如: -10, 5 .

2022-02-16 14:05:21 262

原创 1006 Sign In and Sign Out (25 分)

题目要求:找出最先进教室和最晚出教室的id 没什么难度,将输入中的hh:mm:ss 转换成秒(s)为单位进行比较大小即可 #include<cstdio> #include<iostream> #include<string> #include<cstring> #include<algorithm> #include<vector> using namespace std; struct Record{ string

2022-02-16 13:00:52 353

原创 1004 Counting Leaves (30 分)

题目要求:给出一颗树,统计该树每层叶子结点个数。 坑:输入格式不是顺序,子节点不一定能在输入时就知晓其父节点,需所有输入完成后,层序遍历时确定该结点所在层级。 #include<cstdio> #include<vector> #include<queue> using namespace std; int n, m; struct Node{ int layer; vector<int> children; }node[110]

2022-02-16 00:08:17 70

空空如也

空空如也

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

TA关注的人

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