#include<stdio.h>
void print(int a[],int cnt)
{
int i;
for (i=0;i<cnt;i++) {
printf("%d,",a[i]);
}
printf("\n");
}
void print2(int a[8][8],int cnt)
{
int i,j;
for (i=0;i<cnt;i++){
for(j=0;j<cnt;j++) {
printf("%4d,",a[i][j]);
}
printf("\n");
}
}
void main()
{
int num[8]={1,-2,3,10,-4,7,2,-5};
int array_size=8;
print(num,array_size);
//存放部分和
int num_sum[8]={0,0,0,0,0,0,0,0};
int i;
num_sum[0]=num[0];
for(i=1;i<array_size;i++) {
num_sum[i] = num_sum[i-1]+ num[i];
}
print(num_sum,array_size);
int bufenhe[8][8];
int j;
for(i=0;i<array_size;i++){
for(j=0;j<array_size;j++) {
bufenhe[i][j]=0;
}
}
for(i=0;i<array_size;i++) {
bufenhe[0][i]=num_sum[i];
}
for (i=1;i<array_size;i++) {
for(j=i;j<array_size;j++) {
bufenhe[i][j]=bufenhe[0][j]-bufenhe[0][i-1];
}
}
print2(bufenhe,8);
int max_num,max_i,max_j;
max_num=-999;
for (i=0;i<array_size;i++){
for(j=i;j<array_size;j++) {
if (max_num < bufenhe[i][j] ) {
max_num = bufenhe[i][j];
max_i=i;
max_j=j;
}
}
}
printf("(%d,%d)",max_i,max_j);
}
void print(int a[],int cnt)
{
int i;
for (i=0;i<cnt;i++) {
printf("%d,",a[i]);
}
printf("\n");
}
void print2(int a[8][8],int cnt)
{
int i,j;
for (i=0;i<cnt;i++){
for(j=0;j<cnt;j++) {
printf("%4d,",a[i][j]);
}
printf("\n");
}
}
void main()
{
int num[8]={1,-2,3,10,-4,7,2,-5};
int array_size=8;
print(num,array_size);
//存放部分和
int num_sum[8]={0,0,0,0,0,0,0,0};
int i;
num_sum[0]=num[0];
for(i=1;i<array_size;i++) {
num_sum[i] = num_sum[i-1]+ num[i];
}
print(num_sum,array_size);
int bufenhe[8][8];
int j;
for(i=0;i<array_size;i++){
for(j=0;j<array_size;j++) {
bufenhe[i][j]=0;
}
}
for(i=0;i<array_size;i++) {
bufenhe[0][i]=num_sum[i];
}
for (i=1;i<array_size;i++) {
for(j=i;j<array_size;j++) {
bufenhe[i][j]=bufenhe[0][j]-bufenhe[0][i-1];
}
}
print2(bufenhe,8);
int max_num,max_i,max_j;
max_num=-999;
for (i=0;i<array_size;i++){
for(j=i;j<array_size;j++) {
if (max_num < bufenhe[i][j] ) {
max_num = bufenhe[i][j];
max_i=i;
max_j=j;
}
}
}
printf("(%d,%d)",max_i,max_j);
}