带正负数的连续子数组最大长度

未排序数组中累加和为给定值的最长子数组长度

http://www.nowcoder.com/questionTerminal/36fb0fd3c656480c92b569258a1223d5

include <bits/stdc++.h>

using namespace std;

int main()
{
int n,k,t,len=0;
cin>>n>>k;
vector<int> arr(n+1,0);
for(int i=1;i<=n;i++)
{
cin>>t;
arr[i]=arr[i-1]+t;
if(arr[i]==k)
len=max(len,i);
}
for(int i=1;i<=n;i++)
for(int j=n;j>=i+len;j--) //j<i+len时,则长度必定小于len,比较无意义
{
if(arr[j]-arr[i]==k)
{
len = max(len,j-i);
break;
}
}
cout<<len<<endl;
return 0;
}</int>

全部评论

相关推荐

10-28 10:48
已编辑
门头沟学院 Java
孩子我想要offer:发笔试后还没笔试把我挂了,然后邮箱一直让我测评没测,后面不知道干嘛又给我捞起来下轮笔试,做完测评笔试又挂了😅
点赞 评论 收藏
分享
11-19 18:44
已编辑
成都理工大学 Java
程序员花海:我面试过100+校招生,大厂后端面试不看ACM,竞赛经历含金量低于你有几份大厂实习 这个简历整体来看不错 可以海投
如何写一份好简历
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务