Đề bài :
Cho một mảng một chiều gồm n số nguyên. Tìm mảng con có tổng các phần tử là lớn nhất.
Mảng con chỉ gồm các phần tử liên tiếp.
Bài giải
#include "iostream"
#include "conio.h" using namespace std;
int a[] = {1,2,3, 2,3,4,5, 1,8,9};
int Tong(int n, int i)
{ if (n == i) return a[i];
return Tong(n-1,i) + a[n];
}
void process(int n)
{ int i;
for (i = n-1; i>=0; i--)
if (a[i] > a[i-1] && i-1 >= 0) cout << a[i] << " ";
else { cout << a[i] << " " << "\nTong la: " << Tong(n-1,i) << endl; break;}
if (i > 0) process(i);
}
main()
{
process(10);
cout << "\nfinish! " << endl;
getch();
}