2019年9月22日

leetcode628

摘要: //逻辑分析题目 + 分情况讨论 最大的数据就是若干种情况 依次找全并比较大小即可 class Solution { public: int maximumProduct(vector<int>& nums) { sort(nums.begin() , nums.end()); int len = 阅读全文

posted @ 2019-09-22 15:30 在苏州的城边 阅读(323) 评论(0) 推荐(1) 编辑

leetcode976

摘要: //这道题目简单分析一下针对一个序列(排序之后)A[0],A[1],...,A[n-1] //考虑组成的最大边是A[i]考虑枚举 A[k] A[i-1] A[i]的组合一定比 A[p] A[i - j] A[i]的组合大 //因此就形成了一个线性的枚举的算法 class Solution { public: int largestPerimeter(vector<int>& A) { sort(A 阅读全文

posted @ 2019-09-22 15:29 在苏州的城边 阅读(230) 评论(0) 推荐(1) 编辑

leetcode754

摘要: //很典型的数学推导 + 简单编程问题 //这个问题转换成1 , 2 ,3 ,...,n添加正负号求和等于t的问题 (这一步在做题的时候想到了),已知t 求解n的这样一个过程 //于是设正数部分是p 负数部分的和是q //有 p + q = s(前n求和) //有 p - q = t //想见得到 s - t = 2q 注意这里2q直接看成偶数即可 等式右边直接看成一个约束条件 因为对于1~n满... 阅读全文

posted @ 2019-09-22 15:28 在苏州的城边 阅读(220) 评论(0) 推荐(1) 编辑

leetcode836

摘要: //分类讨论 思路有点麻烦 该题目也给出了如果对于无序点解体的思路 即按照左下到右上的思路处理 //1.首先确定一个矩形 //2.然后根据第二个矩形的左下角的横坐标移动 来分成三类 : i. 区间右侧 ii.区间中间 iii.区间左侧 //3.针对i 容易看到可以直接返回 //4.针对ii 讨论不重叠时纵坐标的取值 其余均重叠 //5.针对iii情况相对复杂 这里两种情况与ii相同,还有一种情况... 阅读全文

posted @ 2019-09-22 15:27 在苏州的城边 阅读(239) 评论(0) 推荐(1) 编辑

导航