Codility: Lesson 1 - BinaryGap problem solution in c#
by ne on 2021-09-29 under Algo/DS/Problems tagged with algorithm codility
public int solution(int N)
{
var binaryString = GetBinaryString(N);
var startCounting = false;
int tempCount = 0;
int maxCount = 0;
for (int i = 0; i < binaryString.Length; i++)
{
if (startCounting && binaryString[i] == '0')
{
tempCount++;
}
if (binaryString[i] == '1')
{
startCounting = true;
if (maxCount < tempCount)
{
maxCount = tempCount;
}
tempCount = 0;
}
}
return maxCount;
}
private string GetBinaryString(int N)
{
string binary = "";
var temp = N;
while (temp != 0)
{
binary += temp % 2;
temp = temp / 2;
}
string original = "";
for (int i = binary.Length - 1; i >= 0; i--)
{
original += binary[i];
}
return original;
}