-
Notifications
You must be signed in to change notification settings - Fork 2
/
ChuckNorris.cs
36 lines (30 loc) · 953 Bytes
/
ChuckNorris.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
// https://www.codingame.com/training/easy/chuck-norris
using System;
using System.Linq;
using System.IO;
using System.Text;
using System.Collections;
using System.Collections.Generic;
class Solution
{
static void Main(string[] args)
{
string message = Console.ReadLine();
var bytes = Encoding.ASCII.GetBytes(message);
var bString = String.Join("", bytes.Select(b => Convert.ToString(b, 2).PadLeft(7, '0')));
var output = new StringBuilder();
string lastNumber = String.Empty;
foreach (var c in bString)
{
var currentNumber = c.ToString();
if (lastNumber != currentNumber)
{
output.Append(" ");
output.Append(currentNumber == "1" ? "0 " : "00 ");
lastNumber = currentNumber;
}
output.Append("0");
}
Console.WriteLine(output.ToString().TrimStart());
}
}