Advertisement
AlexHristov

Zero Subset

Jan 27th, 2016
152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.14 KB | None | 0 0
  1. using System;
  2.  
  3. class ZeroSubset
  4. {
  5.     static void Main()
  6.     {
  7.         string[] input = Console.ReadLine().Split(' ');
  8.  
  9.         int[] numbers = new int[input.Length];
  10.         int i, j, k;
  11.         int sum;
  12.         bool findZeroSubset = false;
  13.  
  14.         for (i = 0; i < numbers.Length; i++)
  15.         {
  16.             numbers[i] = int.Parse(input[i]);
  17.         }
  18.  
  19.         // генерира комбинации от 5 елемента, 1-ти клас
  20.         for (i = 0; i < numbers.Length; i++)
  21.         {
  22.             sum = numbers[i];
  23.             if (sum == 0)
  24.             {
  25.                 Console.WriteLine("{0} = 0", sum);
  26.                 findZeroSubset = true;
  27.             }
  28.         }
  29.  
  30.         // генерира комбинации от 5 елемента, 2-ти клас
  31.         int l, m;
  32.         for (l = 0; l < numbers.Length - 1; l++)
  33.         {
  34.             for (m = l + 1; m < numbers.Length; m++)
  35.             {
  36.                 sum = numbers[l] + numbers[m];
  37.                 if (sum == 0)
  38.                 {
  39.                     Console.WriteLine("{0}+{1} = 0", numbers[l], numbers[m]);
  40.                     findZeroSubset = true;
  41.                 }
  42.             }
  43.         }
  44.         // генерира комбинации от 5 елемента, 3-ти клас
  45.         for (i = 0; i < numbers.Length - 2; i++)
  46.         {
  47.             for (j = i + 1; j < numbers.Length - 1; j++)
  48.             {
  49.                 for (k = j + 1; k < numbers.Length; k++)
  50.                 {
  51.                     sum = numbers[i] + numbers[j] + numbers[k];
  52.                     if (sum == 0)
  53.                     {
  54.                         Console.WriteLine("{0}+{1}+{2} = 0", numbers[i], numbers[j], numbers[k]);
  55.                         findZeroSubset = true;
  56.                     }
  57.                 }
  58.             }
  59.         }
  60.  
  61.         // генерира комбинации от 5 елемента, 4-ти клас
  62.         int o, p, q, r;      
  63.         for (o = 0; o < numbers.Length - 3; o++)
  64.         {
  65.             for (p = o + 1; p < numbers.Length - 2; p++)
  66.             {
  67.                 for (q = p + 1; q < numbers.Length - 1; q++)
  68.                 {
  69.                     for (r = q + 1; r < numbers.Length; r++)
  70.                     {
  71.                         sum = numbers[o] + numbers[p] + numbers[q] + numbers[r];
  72.                         if (sum == 0)
  73.                         {
  74.                             Console.WriteLine("{0}+{1}+{2}+{3} = 0", numbers[o], numbers[p], numbers[q], numbers[r]);
  75.                             findZeroSubset = true;
  76.                         }
  77.                     }
  78.                 }
  79.             }
  80.         }
  81.         // 5 елемента, 5-ти клас - само една комбинация
  82.         sum = numbers[0] + numbers[1] + numbers[2] + numbers[3] + numbers[4];
  83.         if (sum == 0)
  84.         {
  85.             Console.Write("{0}+{1}+{2}+{3}+{4} = 0", numbers[0], numbers[1], numbers[2], numbers[3], numbers[4]);
  86.             findZeroSubset = true;
  87.         }
  88.  
  89.         if (findZeroSubset == false)
  90.         {
  91.             Console.WriteLine("no zero subset");
  92.         }
  93.         Console.WriteLine();
  94.     }
  95. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement