c++ - 使用 Gdb 调试器正常退出进程
问题描述
我是 CPP 问题解决的初学者,在这个问题上遇到了麻烦:- Q)给定一个未排序的非负整数数组,找到一个添加到给定数字的连续子数组。我正在用 gdb 调试它并且没有得到任何输出,它显示进程退出通常较差 1.关于它为什么会发生的任何建议?
#include <stdio.h>
#include<iostream>
#include<vector>
using namespace std;
void subarray(vector<int> &a,int s,int n);
int main() {
int t,n,s,x;
cin>>t;
vector<int> v;
while(t)
{
cin>>n>>s;
for(int i=0;i<n;i++)
{
cin>>x;
v.push_back(x);
}
subarray(v,s,n);
t--;
v.clear();
}
return 0;
}
void subarray(vector<int> &a,int s,int n)
{
int j,sum,i=0;
while(j<n&&i<n)
{
sum+=a[j];
if(sum>s)
{
sum=sum-a[i];
i++;
j=i;
}
if(sum<s)
{
j++;
}
else
{
cout<<i+1<<" "<<j+1<<endl;
break;
}
if(j==n&&i<n)
{
i++;
j=i;
}
if(j==n&&i==n)
{
cout<<-1<<endl;
break;
}
}
}
解决方案
推荐阅读
- java - 如何在java中产生编译代码分段错误?
- c# - tfs 2018通过c#上传流程模板
- powershell - 使用 powershell 替换 .dtsConfig 中的值
- arrays - 如何在 wordpress 中反序列化此数据
- angular - 如果第一个用户已经登录,如何防止第二个用户在另一个选项卡上登录
- python - subprocess.run 简单场景失败
- jquery - codeigniter 验证不适用于 bootstrap 选择的下拉菜单
- angular - Angular 7:暂停正在进行的流式传输请求并在处理数据块时继续
- google-sheets - 如何在具有动态输出范围的谷歌表格中生成随机值?
- c - 我可以从 PIC C18 中的 main.c 访问我的 source.c 中的联合吗?