当前位置:网站首页>【7.5】15. 三数之和
【7.5】15. 三数之和
2022-07-07 21:52:00 【howtoloveyou】
对vector快排为从小到大:sort(nums.begin(), nums.end());
对vector快排为从大到小:sort(nums.begin(), nums.end(), greater<int>());
#define MAX_INF 1e7
class Solution {
public:
vector<vector<int>> threeSum(vector<int>& nums) {
sort(nums.begin(), nums.end());
vector<vector<int>> ret;
vector<int> ans;
vector<int> pre_ans;
int a = -MAX_INF, b, c;
int b_ptr, c_ptr;
if(nums.size() < 3) return ret;
for(int i = 0; i < nums.size() - 2; i++) {
if(a != nums[i]) {
a = nums[i];
b = nums[i + 1];
b_ptr = i + 1;
c = nums[nums.size() - 1];
c_ptr = nums.size() - 1;
while(b_ptr < c_ptr) {
//printf("a: %d, b: %d, c: %d\n", a, b, c);
if((a + b + c) < 0) {
b_ptr++;
b = nums[b_ptr];
} else if((a + b + c) > 0) {
c_ptr--;
c = nums[c_ptr];
} else {
ans.push_back(a);
ans.push_back(b);
ans.push_back(c);
if(pre_ans.size() == 0 || pre_ans != ans) {
pre_ans = ans;
ret.push_back(ans);
ans.pop_back();
ans.pop_back();
ans.pop_back();
} else if(pre_ans == ans) {
ans.pop_back();
ans.pop_back();
ans.pop_back();
}
b_ptr++;
b = nums[b_ptr];
}
}}
}
return ret;
}
};
边栏推荐
- 2022注册测绘师备考开始 还在不知所措?手把手教你怎么考?
- 七月第一周
- Cloud native data warehouse analyticdb MySQL user manual
- S2b2b mall solution of intelligent supply chain in packaging industry: opening up a new ecosystem of e-commerce consumption
- 2022 届的应届生都找到工作了吗?做自媒体可以吗?
- 云原生正在吞噬一切,开发者该如何应对?
- Mobile heterogeneous computing technology - GPU OpenCL programming (basic)
- B_ QuRT_ User_ Guide(40)
- Talk about the design and implementation logic of payment process
- How to generate unique file names
猜你喜欢
B_QuRT_User_Guide(37)
建筑建材行业SRM供应商云协同管理平台解决方案,实现业务应用可扩展可配置
PCI-Express接口的PCB布线规则
Talk about the design and implementation logic of payment process
电子设备行业智能供应链协同平台解决方案:解决低效, 赋能产业数字化升级
New potential energy of industrial integration, Xiamen station of city chain technology digital summit successfully held
Mobile heterogeneous computing technology - GPU OpenCL programming (basic)
深入理解Mysql锁与事务隔离级别
伸展树(一) - 图文解析与C语言实现
B_QuRT_User_Guide(38)
随机推荐
How can we make money by making video clips from our media?
Solve the problem of duplicate request resource paths /o2o/shopadmin/o2o/shopadmin/getproductbyid
The efficient s2b2c e-commerce system helps electronic material enterprises improve their adaptability in this way
城联优品作为新力量初注入,相关上市公司股价应声上涨150%
ROS2专题(03):ROS1和ROS2的区别【01】
Given an array, such as [7864, 284, 347, 7732, 8498], now you need to splice the numbers in the array to return the "largest possible number."
USB (XVI) 2022-04-28
The 19th Zhejiang Provincial Collegiate Programming Contest 2022浙江省赛 F.EasyFix 主席树
Install Fedora under RedHat
Explain
MySQL Index Optimization Practice II
Install a new version of idea. Double click it to open it
USB (XVII) 2022-04-15
Explain
MATLAB signal processing [Q & A essays · 2]
Coreseek:第二步建索引及測试
S2b2b mall solution of intelligent supply chain in packaging industry: opening up a new ecosystem of e-commerce consumption
LDO穩壓芯片-內部框圖及選型參數
Entity层、DAO层、Service层、Controller层 先后顺序
统计电影票房排名前10的电影并存入还有一个文件