svetlozar_kirkov

Friend Bits

Sep 21st, 2014
320
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.85 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4.  
  5. class FriendBits
  6.     {
  7.         static void Main()
  8.         {
  9.             uint input = uint.Parse(Console.ReadLine());
  10.             string binary = Convert.ToString(input, 2);
  11.             int[] bits = binary.Select(c => int.Parse(c.ToString())).ToArray();
  12.             List<int> friendBits = new List<int>();
  13.             List<int> aloneBits = new List<int>();
  14.  
  15.             for (int i = 0; i < bits.Length; i++)
  16.             {
  17.                 if (i + 1 < bits.Length && bits[i] == bits[i + 1])
  18.                 {
  19.                     friendBits.Add(bits[i]);
  20.                 }
  21.                 else if (i - 1 >= 0 && bits[i] == bits[i - 1])
  22.                 {
  23.                     friendBits.Add(bits[i]);
  24.                 }
  25.                 else
  26.                 {
  27.                     aloneBits.Add(bits[i]);
  28.                 }
  29.             }
  30.  
  31.         if (friendBits.Count == 0)
  32.             {
  33.                 string aloneNum = string.Join("", aloneBits.Select(x => x.ToString()).ToArray());
  34.                 Console.WriteLine(0);
  35.                 Console.WriteLine(Convert.ToInt32(aloneNum, 2));
  36.             }
  37.             else if (aloneBits.Count == 0)
  38.             {
  39.                 string friendNum = string.Join("", friendBits.Select(x => x.ToString()).ToArray());
  40.            
  41.                 Console.WriteLine(Convert.ToInt32(friendNum, 2));
  42.                 Console.WriteLine(0);
  43.             }
  44.             else
  45.             {
  46.                 string friendNum = string.Join("", friendBits.Select(x => x.ToString()).ToArray());
  47.                 string aloneNum = string.Join("", aloneBits.Select(x => x.ToString()).ToArray());
  48.  
  49.                 Console.WriteLine(Convert.ToInt32(friendNum, 2));
  50.                 Console.WriteLine(Convert.ToInt32(aloneNum, 2));
  51.             }
  52.         }
  53.     }
Advertisement
Add Comment
Please, Sign In to add comment