摘要: 递增三元组 请你统计有多少个三元组 (i,j,k) 满足: 1≤i,j,k≤N Ai<Bj<Ck 排序+双指针 思路 排序A、B、C,然后固定B的元素B[i],在A里找小于B[i]的数的个数 a、C里找大于B[i]的数的个数 b,对答案的贡献是:a*b #include<bits/stdc++.h> 阅读全文
posted @ 2020-10-06 21:33 童年の波鞋 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 给了你 n 个数,希望你从这 n 个数中找到3个数,使得这三个数的和是 K 的倍数,且这个和最大。 思路 f[i][j][k] 表示从前i个数选j个数,且j个数之和模K为k的最大和,有两种决策: 选第i个数:f[i][j][k]=max(f[i][j][k], f[i-1][j][k]) 不选第i个 阅读全文
posted @ 2020-10-06 18:01 童年の波鞋 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 找出所有满足条件且不重复的四元组,即四元组中 a + b + c + d 的值与 target 相等 class Solution { public: vector<vector<int>> fourSum(vector<int>& A, int m) { int n=A.size(); sort( 阅读全文
posted @ 2020-10-06 09:14 童年の波鞋 阅读(96) 评论(0) 推荐(0) 编辑