Advertisement
kreato

MaximalSum

Feb 13th, 2015
244
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 0.94 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. class MaximalSum
  7. {
  8.     static void Main()
  9.     {
  10.         int[] arr = { 2, 3, -6, -1, 2, -1, 6, 4, -8, 8 };
  11.         int sum = 0;
  12.         int maxSum = 0;
  13.         int start = 0;
  14.         int end = 0;
  15.         for (int i = 0; i < arr.Length; i++)
  16.         {
  17.             sum += arr[i];
  18.             if (sum > maxSum)
  19.             {
  20.                 maxSum = sum;
  21.                 end = i;
  22.             }
  23.             if (sum < 0)
  24.             {
  25.                 sum = 0;
  26.                 start = i + 1;
  27.             }
  28.         }
  29.         for (int i = start; i <= end; i++)
  30.         {
  31.             Console.Write(arr[i]);
  32.  
  33.             if (i == end)
  34.             {
  35.                 break;
  36.             }
  37.             Console.Write(", ");
  38.         }
  39.         Console.WriteLine();
  40.         Console.WriteLine("Max sum is: {0}", maxSum);
  41.     }
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement