Open In App

Find the Mid-Alphabet for each index of the given Pair of Strings

Last Updated : 29 Dec, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

Given two same-length strings str1 and str2 consisting of lowercase English alphabets, the task is to find the Mid-Alphabet for each index of the given pair of Strings.

Examples: 

Input: str1 = “abcd”, str2 = “cdef” 
Output: bcde 
Explanation: 
b is mid of a and c 
c is mid of b and d 
d is mid of c and e 
e is mid of e and f

Input: str1 = “akzbqzgw”, str2 = “efhctcsz” 
Output: chqbrnmx 

Approach: 
The Mid-Alphabet can be calculated by taking an average of the ASCII values of the characters in each string at that index. 
 

Below is the implementation of the above approach: 

C++

// C++ program to find the Mid-Alphabet
// for each index of the given Pair of Strings
 
#include <bits/stdc++.h>
using namespace std;
 
// Function to find the mid alphabets
void findMidAlphabet(string s1, string s2, int n)
{
 
    // For every character pair
    for (int i = 0; i < n; i++) {
 
        // Get the average of the characters
        int mid = (s1[i] + s2[i]) / 2;
        cout << (char)mid;
    }
}
 
// Driver code
int main()
{
 
    string s1 = "akzbqzgw";
    string s2 = "efhctcsz";
    int n = s1.length();
 
    findMidAlphabet(s1, s2, n);
 
    return 0;
}

                    

Java

// Java program to find the Mid-Alphabet
// for each index of the given Pair of Strings
class GFG
{
 
// Function to find the mid alphabets
static void findMidAlphabet(String s1,
                            String s2, int n)
{
 
    // For every character pair
    for (int i = 0; i < n; i++)
    {
 
        // Get the average of the characters
        int mid = (s1.charAt(i) +
                   s2.charAt(i)) / 2;
        System.out.print((char)mid);
    }
}
 
// Driver code
public static void main(String []args)
{
    String s1 = "akzbqzgw";
    String s2 = "efhctcsz";
    int n = s1.length();
 
    findMidAlphabet(s1, s2, n);
}
}
 
// This code is contributed by Rajput-Ji

                    

Python3

# Python3 program to find the Mid-Alphabet
# for each index of the given Pair of Strings
 
# Function to find the mid alphabets
def findMidAlphabet(s1, s2, n):
 
    # For every character pair
    for i in range(n):
 
        # Get the average of the characters
        mid = (ord(s1[i]) + ord(s2[i])) // 2
        print(chr(mid), end = "")
 
# Driver code
s1 = "akzbqzgw"
s2 = "efhctcsz"
n = len(s1)
 
findMidAlphabet(s1, s2, n)
 
# This code is contributed
# by Mohit Kumar

                    

C#

// C# program to find the Mid-Alphabet
// for each index of the given Pair of Strings
using System;
     
public class GFG
{
  
// Function to find the mid alphabets
static void findMidAlphabet(String s1,
                            String s2, int n)
{
  
    // For every character pair
    for (int i = 0; i < n; i++)
    {
  
        // Get the average of the characters
        int mid = (s1[i] +
                   s2[i]) / 2;
        Console.Write((char)mid);
    }
}
  
// Driver code
public static void Main(String []args)
{
    String s1 = "akzbqzgw";
    String s2 = "efhctcsz";
    int n = s1.Length;
  
    findMidAlphabet(s1, s2, n);
}
}
 
// This code contributed by Rajput-Ji

                    

Javascript

<script>
 
      // JavaScript program to find the Mid-Alphabet
      // for each index of the given Pair of Strings
       
      // Function to find the mid alphabets
      function findMidAlphabet(s1, s2, n)
      {
        // For every character pair
        for (var i = 0; i < n; i++)
        {
         
          // Get the average of the characters
          var mid = (s1[i].charCodeAt(0) +
          s2[i].charCodeAt(0)) / 2;
          document.write(String.fromCharCode(mid));
        }
      }
 
      // Driver code
      var s1 = "akzbqzgw";
      var s2 = "efhctcsz";
      var n = s1.length;
 
      findMidAlphabet(s1, s2, n);
       
</script>

                    

Output: 
chqbrnmx

 

Time Complexity: O(N)    , where N is the length of the String.
Auxiliary Space: O(1), no extra space is required, so it is a constant.



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads