fork(2) download
  1. #include <iostream>
  2. #include <math.h>
  3.  
  4. int miasta;
  5. long long int x=0;
  6. long long int y,z=1;
  7. long long int zysk;
  8. long long int sumka=0;
  9.  
  10. using namespace std;
  11.  
  12.  
  13. int main()
  14. {
  15. cin >> miasta;
  16. for (int i = 0; i < miasta; i++)
  17. {
  18. cin >> zysk;
  19.  
  20. if (zysk < 0)
  21. {
  22. if (sumka < x) sumka = x;
  23. x += zysk;
  24. y = zysk;
  25. z = x;
  26. }
  27. else
  28. {
  29. x += zysk;
  30. if (sumka < x && z > 0) sumka = x;
  31. else if (zysk >= abs(y) + 1 && z > 0) sumka += zysk + y;
  32. else
  33. {
  34. if (sumka < zysk) sumka = zysk;
  35. if (z < 0)
  36. {
  37. x = zysk;
  38. z = 1;
  39. }
  40. }
  41. }
  42. }
  43. cout << sumka << endl;
  44. return 0;
  45. }
Success #stdin #stdout 0s 15224KB
stdin
5
1 
-2
4
5
-2
stdout
9