#include "maklib.h"
#include "message.h"
#include <iostream>
using namespace std;
int maxtu(int comax)
{
int suma,smax,smin,sminp,maxt=0;
sminp=smin=smax=suma=0;
//cout<<sminp<<endl;
suma=0;
for (int iwew=1;iwew<=comax;iwew++)
{
suma=suma+ElementAt(iwew) ;
if (smax<suma)
{
smax=suma;
maxt=smax-smin;
sminp=smin;
}
else
if(suma-smin>maxt)
{
maxt=suma-smin;
}
if(smin>suma)
{
smin=suma;
}
}
//cout<<smin<<" "<<smax<<endl;
return maxt;
}
int main()
{
//cout<<ElementAt(2)<<endl;;
int comax2=Size();
//cout<<comax2<<endl;
if(MyNodeId()==0)
cout<<maxtu(comax2);
return 0;
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | #include "maklib.h" #include "message.h" #include <iostream> using namespace std; int maxtu(int comax) { int suma,smax,smin,sminp,maxt=0; sminp=smin=smax=suma=0; //cout<<sminp<<endl; suma=0; for (int iwew=1;iwew<=comax;iwew++) { suma=suma+ElementAt(iwew) ; if (smax<suma) { smax=suma; maxt=smax-smin; sminp=smin; } else if(suma-smin>maxt) { maxt=suma-smin; } if(smin>suma) { smin=suma; } } //cout<<smin<<" "<<smax<<endl; return maxt; } int main() { //cout<<ElementAt(2)<<endl;; int comax2=Size(); //cout<<comax2<<endl; if(MyNodeId()==0) cout<<maxtu(comax2); return 0; } |
English