Hackerrank Beautiful Binary String problem solution YASH PAL, 31 July 2024 In this Hackerrank Beautiful Binary String problem, we have given a string and we need to determine a minimum number of steps needed to make a string beautiful by changing 0 to 1 and 1 to 0. Problem solution in Python programming. #!/bin/python3 import math import os import random import re import sys # # Complete the 'beautifulBinaryString' function below. # # The function is expected to return an INTEGER. # The function accepts STRING b as parameter. # def beautifulBinaryString(b): # Write your code here return(b.count('010')) if __name__ == '__main__': fptr = open(os.environ['OUTPUT_PATH'], 'w') n = int(input().strip()) b = input() result = beautifulBinaryString(b) fptr.write(str(result) + 'n') fptr.close() Problem solution in Java Programming. import java.io.*; import java.util.*; public class Solution { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); sc.nextLine(); String input = sc.nextLine(); int answer = 0; int i = 0; while (i < n - 2){ if (input.substring(i, i + 3).equals("010")){ answer++; i += 3; continue; } i++; } System.out.println(answer); } } Problem solution in C++ programming. #include <map> #include <set> #include <list> #include <cmath> #include <ctime> #include <deque> #include <queue> #include <stack> #include <string> #include <bitset> #include <cstdio> #include <limits> #include <vector> #include <climits> #include <cstring> #include <cstdlib> #include <fstream> #include <numeric> #include <sstream> #include <iostream> #include <algorithm> #include <unordered_map> using namespace std; int main(){ int n; cin >> n; string B; cin >> B; int cnt = 0; for (int i = 0; i < B.size(); ++i) { if (B.substr(i, 3) == "010") { ++cnt; i+=2; } } cout << cnt << endl; return 0; } Problem solution in C programming. #include <math.h> #include <stdio.h> #include <string.h> #include <stdlib.h> #include <assert.h> #include <limits.h> #include <stdbool.h> int main(){ int n; scanf("%d",&n); char* B = (char *)malloc(10240 * sizeof(char)); scanf("%s",B); printf("%dn", countSubstring(B, "010")); return 0; } int countSubstring(const char *str, const char *sub) { int length = strlen(sub); if (length == 0) return 0; int count = 0; for (str = strstr(str, sub); str; str = strstr(str + length, sub)) ++count; return count; } Problem solution in JavaScript programming. process.stdin.resume(); process.stdin.setEncoding('ascii'); var input_stdin = ""; var input_stdin_array = ""; var input_currentline = 0; process.stdin.on('data', function (data) { input_stdin += data; }); process.stdin.on('end', function () { input_stdin_array = input_stdin.split("n"); main(); }); function readLine() { return input_stdin_array[input_currentline++]; } /////////////// ignore above this line //////////////////// function main() { let n = parseInt(readLine()); let B = readLine(); let index = B.indexOf('010'); let i = 0; while(index > -1){ i++; B = B.split('') B[index+2] = '1' B = B.join('') index = B.indexOf('010'); } console.log(i); } algorithm coding problems