mausha

Matrix_GroupNumbers

Jun 2nd, 2017
178
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.21 KB | None | 0 0
  1. using System;
  2. using System.Linq;
  3.  
  4. namespace LAB_GroupNumbers
  5. {
  6.     public class GroupNumbers
  7.     {
  8.         public static void Main()
  9.         {
  10.             var watch = System.Diagnostics.Stopwatch.StartNew();
  11.             var input = Console.ReadLine().Split(new[] {", "}, StringSplitOptions.RemoveEmptyEntries).Select(int.Parse).ToArray();
  12.  
  13.             var sizes = new int[3];
  14.             foreach (var token in input)
  15.             {
  16.                 sizes[Math.Abs(token % 3)]++;
  17.             }
  18.  
  19.             int[][] matrix =
  20.             {
  21.                 new int[sizes[0]],
  22.                 new int[sizes[1]],
  23.                 new int[sizes[2]],
  24.             };
  25.  
  26.             var indexesArray = new []{0, 0, 0};
  27.             foreach (var number in input)
  28.             {
  29.                 var reminder = Math.Abs(number % 3);
  30.                 matrix[reminder][indexesArray[reminder]] = number;
  31.                 indexesArray[reminder]++;
  32.             }
  33.  
  34.             for (int row = 0; row < matrix.GetLength(0); row++)
  35.             {
  36.                 Console.WriteLine(string.Join(" ", matrix[row]));
  37.             }
  38.  
  39.             watch.Stop();
  40.             Console.WriteLine(watch.ElapsedTicks);
  41.         }
  42.     }
  43. }
Advertisement
Add Comment
Please, Sign In to add comment