HackerRank Super Reduced String Solution Yashwant Parihar, April 22, 2023April 28, 2023 In this post, we will solve HackerRank Super Reduced String Problem Solution.Reduce a string of lowercase characters in range ascii [‘a’..’z’] by doing a series of operations. In each operation, select a pair of adjacent letters that match, and delete them. Delete as many characters as possible using this method and return the resulting string. If the final string is empty, return Empty StringExamples = ‘aab’aab shortens to b in one operation: remove the adjacent a characters.s = ‘abba’Remove the two ‘b’ characters leaving ‘aa’. Remove the two ‘a’ characters to leave “. Return ‘Empty String’.Function DescriptionComplete the superReducedString function in the editor below.superReducedString has the following parameter(s):string s: a string to reduceReturnsstring: the reduced string or Empty StringInput FormatA single string, sSample Input 0aaabccddd Sample Output 0abd Explanation 0Perform the following sequence of operations to get the final string:aaabccddd → abccddd → abddd → abd Sample Input 1aa Sample Output 1Empty String Explanation 1aa → Empty String Sample Input 2baab Sample Output 2Empty String Explanation 2baab → bb → Empty StringHackerRank Super Reduced String Problem SolutionSuper Reduced String C Solution#include <stdio.h> #include <string.h> #include <math.h> #include <stdlib.h> int main() { char s[103]; scanf("%s", s); int len, ll; do { len = strlen(s); // printf("%d\n", len); for (char *ss=s; *ss; ss++) { if (*ss == ss[1]) { // printf("%s ", s ); strcpy(ss, ss+2); // printf("%s\n", s ); } else { // printf("\n"); } } ll = strlen(s); // printf("%d\n", ll); } while (len != ll); if (s[0]==0) { printf("Empty String\n"); } else { printf("%s\n", s); } /* Enter your code here. Read input from STDIN. Print output to STDOUT */ return 0; }Super Reduced String C++ Solution#include<bits/stdc++.h> using namespace std; #define pb push_back #define all(c) (c).begin(), (c).end() #define mp make_pair string s, tmp = ""; int c = 0; char str; bool vis[105]; int main(){ ios_base :: sync_with_stdio(0); cin >> s; while(1){ if(c++ == 10000) break; for(int i = 1; i < (int)s.size(); i++){ if((!vis[i]) && (!vis[i-1])){ if(s[i] == s[i-1]) vis[i] = 1, vis[i-1] = 1; } } for(int i = 0; i < (int)s.size(); i++){ if(!vis[i]) tmp += s[i]; } s = tmp; tmp = ""; memset(vis, 0, sizeof vis); } if(s == "") cout << "Empty String" << '\n'; else cout << s << '\n'; return 0; }Super Reduced String C Sharp Solutionusing System; using System.Collections.Generic; using System.IO; class Solution { static void Main(String[] args) { string inputStr = Console.ReadLine(); while(true) { bool found = false; for(int i = 0 ; i < inputStr.Length - 1; i++) { if( inputStr[i]==inputStr[i+1] ) { inputStr = inputStr.Remove(i,2); found = true; continue; } } if(!found) break; } if(inputStr.Length == 0) Console.WriteLine("Empty String"); else Console.WriteLine(inputStr); } }Super Reduced String Java Solutionimport java.io.*; import java.math.*; import java.security.*; import java.text.*; import java.util.*; import java.util.concurrent.*; import java.util.function.*; import java.util.regex.*; import java.util.stream.*; import static java.util.stream.Collectors.joining; import static java.util.stream.Collectors.toList; class Result { /* * Complete the 'superReducedString' function below. * * The function is expected to return a STRING. * The function accepts STRING s as parameter. */ public static String superReducedString(String s) { if(s.length()==1){ return s; } char[] chars = s.toCharArray(); LinkedList<Character> charStack = new LinkedList<>(); for (int i=0;i<chars.length;i++){ Character last = charStack.peekLast(); if(last != null && last.equals(chars[i])){ charStack.removeLast(); }else{ charStack.addLast(chars[i]); } } // print charStackContent if(charStack.isEmpty()){ return "Empty String"; } return charStack.stream().map(c->c.toString()).collect(Collectors.joining()); } } public class Solution { public static void main(String[] args) throws IOException { BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(System.getenv("OUTPUT_PATH"))); String s = bufferedReader.readLine(); String result = Result.superReducedString(s); bufferedWriter.write(result); bufferedWriter.newLine(); bufferedReader.close(); bufferedWriter.close(); } }Super Reduced String JavaScript Solutionfunction processData(input) { var s = input.concat(); for(i=0; i < s.length-1; ) { if(s[i] === s[i+1]) { s = s.slice(0, i) + s.slice(i+2); i = 0; } else { i++; } } console.log(s || "Empty String"); } process.stdin.resume(); process.stdin.setEncoding("ascii"); _input = ""; process.stdin.on("data", function (input) { _input += input; }); process.stdin.on("end", function () { processData(_input); });Super Reduced String Python Solutions = input() st = [] c = 0 cur = s[0] for i in s: if i == cur: c += 1 else: if c%2 != 0: if st: if st[-1] == cur: st.pop(-1) else: st.append(cur) else: st.append(cur) cur = i c = 1 if c%2 != 0: if st: if st[-1] == cur: st.pop(-1) else: st.append(cur) else: st.append(cur) s = ''.join(st) if not s: s = "Empty String" print(s)Other SolutionsHackerRank Intro to Tutorial Challenges SolutionHackerRank CamelCase Problem Solution c C# C++ HackerRank Solutions java javascript python CcppCSharpHackerrank Solutionsjavajavascriptpython