题目:
class Solution {
public:
vector<vector<int>> findContinuousSequence(int target) { //本题使用滑动窗口(双指针)
int i=1, j=1; //定义左右边界,一般是左闭右开
int sum=0; //窗口内的和
vector<vector<int>> result;
while(i<=target/2){ //左边界最大为target/2
if(sum<target){ //sum小于target,加上j后右边界右移
sum+=j;
j++;
}
else if(sum>target){ //sum超过target,减去i后左边界右移
sum-=i;
i++;
}
else{
vector<int> vec; //sum等于target,记录序列
for(int k=i;k<j;k++){
vec.push_back(k);
}
result.push_back(vec);
sum-=i; //记录后左边界右移
i++;
}
}
return result;
}
};
作者:nettee
链接:https://leetcode.cn/problems/he-wei-sde-lian-xu-zheng-shu-xu-lie-lcof/solutions/133768/shi-yao-shi-hua-dong-chuang-kou-yi-ji-ru-he-yong-h/
来源:力扣(LeetCode)
分类:
算法编程
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具