动态规划C++::杭电ACM1003
2016-03-16 10:51
477 查看
#include <iostream>
using namespace std;
int main()
{
int T,N,i,j,a[100001],count=0;
cin>>T;
for (j=0;j<T;j++)
{
cin>>N;
for (i=0;i<N;i++)
cin>>a[i];
int maxSum=a[0];
int sum=0,l=0,r=0,temp=0;
for (i=0;i<N;i++)
{
sum=sum+a[i];
if(sum>maxSum)
{
maxSum=sum;
l=temp;
r=i;
}
if(sum<0)
{
sum=0;
temp=i+1;
}
}
count++;
cout<<"Case "<<count<<":"<<endl;
cout<<maxSum<<" "<<l+1<<" "<<r+1<<endl;
if(j<T-1)
cout<<endl;
}
return 0;
}
using namespace std;
int main()
{
int T,N,i,j,a[100001],count=0;
cin>>T;
for (j=0;j<T;j++)
{
cin>>N;
for (i=0;i<N;i++)
cin>>a[i];
int maxSum=a[0];
int sum=0,l=0,r=0,temp=0;
for (i=0;i<N;i++)
{
sum=sum+a[i];
if(sum>maxSum)
{
maxSum=sum;
l=temp;
r=i;
}
if(sum<0)
{
sum=0;
temp=i+1;
}
}
count++;
cout<<"Case "<<count<<":"<<endl;
cout<<maxSum<<" "<<l+1<<" "<<r+1<<endl;
if(j<T-1)
cout<<endl;
}
return 0;
}
相关文章推荐
- 运算符重载函数作为类成员函数与友元函数的区别
- C/C++ const 关键字详解
- 详解设计模式中的中介者模式在C++编程中的运用
- 关于C/C++获取指针大小判断系统位数的猜想
- 四道经典C语言指针试题
- c++二叉树的建立、前序中序后序深搜、宽搜、宽搜带行号
- c++中endl与“\n”的区别
- C++继承方式
- C++多态的实现及原理详细解析
- 重温C语言之--文件操作
- C++ 溢出与越界
- c实现各种进制间转换
- C语言+嵌入式SQL+DB2开发经验总结
- C++设计模式——单例模式 系列
- CCameraConfig.cpp文件中define替换
- C++ char*,const char*,string的相互转换
- C++实现解析INI配置文件
- C++静态成员函数&静态数据成员
- LeetCode: 2. Add Two Numbers 【C 解题】
- C++ 标准库 vector list map使用方法