
简单粗暴
#include <iostream>
using namespace std;
#include<stdio.h>
#include<string.h>
int N;
int a=2;
int heigh=1;
int main()
{
cin>>N;
long h[N+1]={0};
long g[N+1]={0};
while(a--){
for(int j=1; j<=N; j++){
for(int i=1; i<=N; i++){
g[i]+=1;
}
h[j]=max(h[j],g[j]);
g[j] = 0;
}
for(int j=N-1; j>1; j--){
for(int i=1; i<=N; i++){
g[i]+=1;
}
h[j]=max(h[j],g[j]);
g[j]=0;
}
}
for(int i=1; i<=N; i++){
cout<<h[i]<<endl;
}
return 0;
}
有不理解的地方可以提出
这篇文章详细描述了一个使用C++编写的程序,通过两个嵌套循环和递归计算给定数组的最大子段和。代码展示了如何在主函数中获取用户输入并输出结果。
1万+





