Tuesday, October 7, 2025
HomeData Modelling & AIMinimum length String with Sum of the alphabetical values of the characters...

Minimum length String with Sum of the alphabetical values of the characters equal to N

Given an integer N, the task is to find the minimum length string whose sum of each character (As a = 1, b = 2, … z = 26) equals to N.
Examples: 
 

Input: N = 5
Output: e
5 can be represented as "aac" or "ad" or "e" etc
But we will take e as it is the minimum length

Input: N = 34
Output: zj

 

Approach: 
 

  • To minimise the length of the String, Greedy Approach will be used.
  • By Greedy Approach, the solution will be very simple.
  • The minimum length of the String will be 
     
N/26 + 1 => if N % 26 != 0
N/26     => if N % 26 == 0
  •  
  • And the minimum string can be found as 
     
(N/26 times z) + (N%26) => if N % 26 != 0
(N/26 times z)          => if N % 26 == 0
  •  

Below is the implementation of the above approach:
 

C++




// C++ program to find the Minimum length String
// with Sum of the alphabetical values
// of the characters equal to N
 
#include <bits/stdc++.h>
using namespace std;
 
// Function to find the minimum length
int minLength(int n)
{
    int ans = n / 26;
    if (n % 26 != 0)
        ans++;
 
    return ans;
}
 
// Function to find the minimum length String
string minString(int n)
{
    int ans = n / 26;
    string res = "";
 
    while (ans--) {
        res = res + "z";
    }
 
    if (n % 26 != 0) {
        res = res
              + (char)((n % 26) + 96);
    }
 
    return res;
}
 
// Driver code
int main()
{
    int n = 50;
 
    cout << minLength(n)
         << endl
         << minString(n);
 
    return 0;
}


Java




// Java program to find the Minimum length String
// with Sum of the alphabetical values
// of the characters equal to N
class GFG
{
 
    // Function to find the minimum length
    static int minLength(int n)
    {
        int ans = n / 26;
        if (n % 26 != 0)
            ans++;
     
        return ans;
    }
     
    // Function to find the minimum length String
    static String minString(int n)
    {
        int ans = n / 26;
        String res = "";
     
        while (ans-- != 0)
        {
            res = res + "z";
        }
     
        if (n % 26 != 0)
        {
            res = res + (char)((n % 26) + 96);
        }
     
        return res;
    }
     
    // Driver code
    public static void main (String[] args)
    {
        int n = 50;
     
        System.out.println(minLength(n));
        System.out.println(minString(n));
    }
}
 
// This code is contributed by AnkitRai01


Python3




# Python3 program to find the Minimum length String
# with Sum of the alphabetical values
# of the characters equal to N
 
# Function to find the minimum length
def minLength(n):
    ans = n // 26
    if (n % 26 != 0):
        ans += 1
 
    return ans
 
# Function to find the minimum length String
def minString(n):
    ans = n // 26
    res = ""
 
    while (ans):
        res = res + "z"
        ans-=1
 
    if (n % 26 != 0):
        res = res + chr((n % 26) + 96)
 
    return res
 
# Driver code
n = 50;
 
print(minLength(n))
print(minString(n))
 
# This code is contributed by Mohit Kumar


C#




// C# iprogram to find the Minimum length String
// with Sum of the alphabetical values
// of the characters equal to N
using System;
     
class GFG
{
 
    // Function to find the minimum length
    static int minLength(int n)
    {
        int ans = n / 26;
        if (n % 26 != 0)
            ans++;
     
        return ans;
    }
     
    // Function to find the minimum length String
    static String minString(int n)
    {
        int ans = n / 26;
        String res = "";
     
        while (ans-- != 0)
        {
            res = res + "z";
        }
     
        if (n % 26 != 0)
        {
            res = res + (char)((n % 26) + 96);
        }
        return res;
    }
     
    // Driver code
    public static void Main (String[] args)
    {
        int n = 50;
     
        Console.WriteLine(minLength(n));
        Console.WriteLine(minString(n));
    }
}
 
// This code is contributed by PrinciRaj1992


Javascript




<script>
 
// Javascript program to find the Minimum length String
// with Sum of the alphabetical values
// of the characters equal to N
 
// Function to find the minimum length
function minLength(n)
{
    var ans = parseInt(n / 26);
    if (n % 26 != 0)
        ans++;
 
    return ans;
}
 
// Function to find the minimum length String
function minString(n)
{
    var ans = parseInt(n / 26);
    var res = "";
 
    while (ans--) {
        res = res + "z";
    }
 
    if (n % 26 != 0) {
        res = res
              + String.fromCharCode((n % 26) + 96);
    }
 
    return res;
}
 
// Driver code
var n = 50;
document.write(minLength(n)+"<br>" + minString(n));
 
</script>


Output: 

2
zx

 

Time Complexity: O(x) where x = n/26

Auxiliary Space: O(x+1) where x = n/26

Feeling lost in the world of random DSA topics, wasting time without progress? It’s time for a change! Join our DSA course, where we’ll guide you on an exciting journey to master DSA efficiently and on schedule.
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!

RELATED ARTICLES

Most Popular

Dominic
32338 POSTS0 COMMENTS
Milvus
86 POSTS0 COMMENTS
Nango Kala
6708 POSTS0 COMMENTS
Nicole Veronica
11872 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11936 POSTS0 COMMENTS
Shaida Kate Naidoo
6827 POSTS0 COMMENTS
Ted Musemwa
7090 POSTS0 COMMENTS
Thapelo Manthata
6780 POSTS0 COMMENTS
Umr Jansen
6784 POSTS0 COMMENTS