08 2018 档案
摘要:参考: 题目描述 一个只包含'A'、'B'和'C'的字符串,如果存在某一段长度为3的连续子串中恰好'A'、'B'和'C'各有一个,那么这个字符串就是纯净的,否则这个字符串就是暗黑的。例如:BAACAACCBAAA 连续子串"CBA"中包含了'A','B','C'各一个,所以是纯净的字符串AABBCC
阅读全文
摘要:理解了这个,但是没有理解如何把多余的减掉zero[i] = zero[i - 1] + one[i - 1]; one[i] = zero[i - 1];
阅读全文
摘要:看着答案基本理解了,但是我自己写还是写不出来 先空着
阅读全文
摘要:思路:动态规划 参考: 解法一: 解法二:
阅读全文
摘要:思路:动态规划 先找规律:每逢数字是2的次方,均为1 递推方程:dp[i]=dp[i-k]+dp[k];其中k是小于i的最近一个2的整数次方
阅读全文
摘要:条件:动态规划 当nums[j]%nums[i]==0时,dp[i] = max(dp[i], dp[j]+1) 为了返回数组,使用pair记录路径
阅读全文
摘要:emplace_back() 和 push_back() 的区别 pair和make_pair
阅读全文
摘要:对链表list循环 对字典循环 1. 只对键的遍历 2. 对键和值都进行遍历
阅读全文
摘要:P为给定的二维平面整数点集。定义 P 中某点x,如果x满足 P 中任意点都不在 x 的右上方区域内(横纵坐标都大于x),则称其为“最大的”。求出所有“最大的”点的集合。(所有点的横坐标和纵坐标都不重复, 坐标轴范围在[0, 1e9) 内) 如下图:实心点为满足条件的点的集合。请实现代码找到集合 P
阅读全文
摘要:C++中set的用法 set的特性是,所有元素都会根据元素的键值自动排序,set的元素不像map那样可以同时拥有实值(value)和键值(key),set元素的键值就是实值,实值就是键值。set不允许两个元素有相同的键值。 set的各成员函数列表如下: 1. begin()--返回指向第一个元素的迭
阅读全文
摘要:参考自会咬人的兔子 方法一:一步旋转 方法二:首先以从对角线为轴翻转,然后再以x轴中线上下翻转即可得到结果
阅读全文
摘要:参考自grandyang 解法一: 解法二:
阅读全文
摘要:总流程是递归:参考grandyang 方法一:用visited记录是否遍历 方法二:交换数字
阅读全文
摘要:这道题让我们求两个字符串数字的相乘,参见网友JustDoIt的博客,和grandyang的代码,主要是使用错位相乘的思想:把错位相加后的结果保存到一个一维数组中,然后分别每位上算进位,最后每个数字都变成一位,然后要做的是去除掉首位0,最后把每位上的数字按顺序保存到结果中即可,代码如下: 还有一种思路
阅读全文

浙公网安备 33010602011771号