首页 > 其他 > 详细

和为0的最长子序列

时间:2015-09-25 21:44:45      阅读:679      评论:0      收藏:0      [点我收藏+]

注意:

1、输入格式 1 2 3 4 5 6  

以回车结束,应该怎么读取? 考虑两点:回车结束判断 和 数组长度未定义?

while(temp = cin.get()!=‘\n‘)

{

  cin.unget();

  cin >> temp;

  vector.pushback(temp);

}

 

2、输入

// ConsoleApplication11.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include <iostream>
#include <stdio.h>
#include <vector>

using namespace std;
vector<int> vec;


int _tmain(int argc, _TCHAR* argv[])
{


int temp = 0;
int count = 0;
vec.clear();
while ((temp = cin.get()) != ‘\n‘)
{
cin.unget();
cin >> temp;
vec.push_back(temp);
}
int thisSum = 0;
int l = 0;
int r = 0;
int i = 0, j = 0;

for (int i = 0; i < vec.size(); i++)
{

thisSum = vec[i];
for (int j = i+1; j < vec.size(); j++)
{
thisSum += vec[j];
if (thisSum == 0 && (r - l) < (j - i))
{
l = i;
r = j;
}
}

}

cout << l << " " << r << endl;

for (int k = l; k <= r; k++)
{
cout << vec[k];
}

}

 

和为0的最长子序列

原文:http://www.cnblogs.com/wll-zju/p/4839509.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!