![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
题目解析
文章平均质量分 77
来自八中的小鹿
因为热爱,所以坚持
展开
-
【贪心经典题目】最大整数-(c++详解)
设有n(n≤20)个正整数(每个在int范围内),将它们连接成一排,组成一个最大的多位整数。例如n=3,3个整数分别是13、312和343,连接成最大的整数为34331213。即:若大小不同,则比较是否前一部分完全相同,如果是,则可以比较短字符串的首位和长字符串的短字符串长度+1位即可。否则按照正常情况排序。当我第一眼看到这个题目的时候,我第一反应就是直接排序字符串,因为首字母大的字符串肯定要排在前面,所以,直接按字典序sort.一行,一个数,表示连接成的最大整数。第二行为n个正整数,分别用空格分隔。原创 2023-05-31 13:14:55 · 1459 阅读 · 0 评论 -
【递推专题】常见的递推“模型”总结
其实递推和递归原理上近似,使用时经常搭配在一起。如:递推需要递归函数实现,而递归则需要递推式,两者相通。这几个“模型”,很多思想都是将一个整体分为最后一个和上面的全部,然后不断分下去,得到结果。原创 2023-05-05 22:37:08 · 678 阅读 · 0 评论 -
[MAY DAY]五一综合训练 之——最值问题
适用于对时间要求很高的题目,双指针算法的难点在于找到什么时候移动有指针,什么时候移动左指针,这种算法大部分是单向移动,但有时需要双向移动(就比如本题)。第一个循环是为了满足题目中两端差距小于m,第二个循环是找到第一个原创 2023-05-02 16:35:11 · 542 阅读 · 0 评论 -
卫星地图——MAP(c++)
一张矩形的卫星地图,有M行N列。行列中的0表示空地,1表示有建筑。有3种类型的建筑:L型: 仅在一行上占据连续的若干个格子,长度至少为2,至多为NC型:仅在一列上占据连续的若干个格子,长度至少为2,至多为MS型:仅占据单个格子。在同一行上或者同一列上可以出现多个建筑。不同的建筑不会相邻,相邻是指上,下,左,右,以及左上,左下,右上,右下等八个方向。求出不同类型的建筑的数量及长度。原创 2023-02-01 20:14:25 · 1272 阅读 · 0 评论 -
寒假集训一期(1)——思维训练
本题运用到了DP的状态转移思想,和方向数组来实现,思维上难度较大。原创 2023-01-12 09:30:27 · 135 阅读 · 0 评论 -
c++【线段树】详解 & 基本操作
这时我们关注红色的字体,我们发现,括号里的第一项a[x-y+1]中x就是当前树的下标,而他减去的红色字体,就是左边第二行得出的二进制数从右往左看第一个1和他之后的0所组成的数字,就如:6的二进制是110,从右往左看第一个1在第二位,所以我们只看后两位,得出10,10的十进制为4,所以减去4。节点的下标(因为是数组)是他的父节点的1/2,即Lson=root原创 2022-12-12 14:57:05 · 491 阅读 · 0 评论 -
洛谷【P1420 最长连号】问题
今天要讲的是最长连号问题,虽然这道题非常的简单,但是想用最简便的方法来做这道题,却需要花很长的时间来优化程序,这考验了我们队程序的理解能力,享受这个过程是非常快乐的,哪怕你的程序只提高了1ms,也会感到非常有成就感(这道题在洛谷里https://www.luogu.com.cn/problem/P1420?原创 2022-11-04 23:17:30 · 781 阅读 · 2 评论 -
寒假集训一期(4)—— c++【STL栈和队列】基本操作函数和模板习题
有两种方法://定义类型为vector的vector for(int i = 0;i ++) {//实现二维 }//直接定义二维int//直接定义二维这道题可以让我们更深刻的理解栈的基本概念。遇到这种题目,我们可以利用栈的概念解决,首先先找准目前没有进过栈的第一个数,然后将目前未进栈元素到我们刚刚找的那个元素全部依次进栈,然后查看出栈顺序是否合法,依次模拟,即可得出结果。原创 2022-11-23 11:31:50 · 1280 阅读 · 0 评论 -
洛谷P1980 [NOIP2013 普及组] 计数问题(用一层循环解决双重循环的问题)
用一层循环解决双重循环的问题,运用排列组合的思想,以位为单位,大大减少了时间复杂度——计数问题原创 2022-10-28 23:49:28 · 622 阅读 · 1 评论