杭电 1003 的问题 我用c++编写的 在vc2010上运行没问题 可是提交后总是 答案错误 不知
杭电1003的问题我用c++编写的在vc2010上运行没问题可是提交后总是答案错误不知到错在哪#include<iostream>usingnamespacestd;in...
杭电 1003 的问题 我用c++编写的 在vc2010上运行没问题 可是提交后总是 答案错误 不知到错在哪
#include<iostream>
using namespace std;
int main()
{ int t;
while(cin>>t){if(t>=1&&t<=20){
for(int s=0;s<t;s++){
int sum=0,max=0,k=0,j=0,K=0;
int n;cin>>n;int a;
for(int i=0;i<n;i++)
{ cin>>a;
sum+=a;
if(sum>=0) {K++;}
if(sum<0)
{ sum=0; K=0;}
if(sum>max)
{j=i; max=sum; k=K;}}
if(max==0){j=-1;k=1;}
if(s)cout<<endl; cout<<"Case"<<s+1<<":"<<endl<<max<<" "<<j+2-k<<" "<<j+1<<endl;
}//全部输入负数时应该输出什么
}
}
} 展开
#include<iostream>
using namespace std;
int main()
{ int t;
while(cin>>t){if(t>=1&&t<=20){
for(int s=0;s<t;s++){
int sum=0,max=0,k=0,j=0,K=0;
int n;cin>>n;int a;
for(int i=0;i<n;i++)
{ cin>>a;
sum+=a;
if(sum>=0) {K++;}
if(sum<0)
{ sum=0; K=0;}
if(sum>max)
{j=i; max=sum; k=K;}}
if(max==0){j=-1;k=1;}
if(s)cout<<endl; cout<<"Case"<<s+1<<":"<<endl<<max<<" "<<j+2-k<<" "<<j+1<<endl;
}//全部输入负数时应该输出什么
}
}
} 展开
1个回答
展开全部
假如某组数据里面所有的数字都是负的,你怎么办?
补充:全部是负数应该输出最大的那一个负数
补充:改你程序真是无语,case的c大小写都搞错了,因为这平添了n次(n>3)WA...
#include<iostream>
using namespace std;
int main()
{
int a,i,n,s=0,t;
int sum,max,k,j,K;
while(cin>>t) for (s=0;s<t;s++)
{
sum=0,max=0,k=0,j=0,K=0;
cin>>n;
for(i=0;i<n;i++)
{
if(sum<0)
{ sum=0; K=0; }
cin>>a;
sum+=a;
K++;
if(sum>max || !i)
{j=i; max=sum; k=K;}
}
if (s) cout <<endl;
cout<<"Case "<<s+1<<":"<<endl<<max<<" "<<j+2-k<<" "<<j+1<<endl;
}
}
补充:全部是负数应该输出最大的那一个负数
补充:改你程序真是无语,case的c大小写都搞错了,因为这平添了n次(n>3)WA...
#include<iostream>
using namespace std;
int main()
{
int a,i,n,s=0,t;
int sum,max,k,j,K;
while(cin>>t) for (s=0;s<t;s++)
{
sum=0,max=0,k=0,j=0,K=0;
cin>>n;
for(i=0;i<n;i++)
{
if(sum<0)
{ sum=0; K=0; }
cin>>a;
sum+=a;
K++;
if(sum>max || !i)
{j=i; max=sum; k=K;}
}
if (s) cout <<endl;
cout<<"Case "<<s+1<<":"<<endl<<max<<" "<<j+2-k<<" "<<j+1<<endl;
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询