Advertisement
ivan_yosifov

Neuron_Mapping

Nov 12th, 2013
50
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.63 KB | None | 0 0
  1. using System;
  2.  
  3. class NeuronMapping
  4. {
  5.     static void Main()
  6.     {
  7.         long[] data = new long[32];
  8.         int i = -1;
  9.         do
  10.         {
  11.             i++;
  12.             data[i] = long.Parse(Console.ReadLine());
  13.         } while (data[i] != -1);
  14.  
  15.         int start = 0;
  16.         int end = 0;
  17.  
  18.         for (i = 0; data[i] != -1; i++)
  19.         {
  20.             if (data[i] != 0)
  21.             {
  22.                 for (int j = 31; j >= 0; j--)
  23.                 {
  24.                     int bit = (int)(data[i] >> j) & 1;
  25.                     if (bit == 1)
  26.                     {
  27.                         start = j;
  28.                         break;
  29.                     }
  30.                 }
  31.                 for (int j = 0; j <= 31; j++)
  32.                 {
  33.                     int bit = (int)(data[i] >> j) & 1;
  34.                     if (bit == 1)
  35.                     {
  36.                         end = j;
  37.                         break;
  38.                     }
  39.                 }
  40.                 if (start != end)
  41.                 {
  42.                     for (int j = start; j >= end; j--)
  43.                     {
  44.                         int bit = (int)(data[i] >> j) & 1;
  45.                         if (bit == 1)
  46.                         {
  47.                             data[i] = ~(1 << j) & data[i];
  48.                         }
  49.                         else
  50.                         {
  51.                             data[i] = (1 << j) | (int)data[i];
  52.                         }
  53.                     }
  54.                 }
  55.             }
  56.         }
  57.  
  58.         for (int j = 0; data[j] != -1; j++)
  59.         {
  60.             Console.WriteLine(data[j]);
  61.         }
  62.     }
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement