You are given a string s consisting of digits and an integer k.

A round can be completed if the length of s is greater than k. In one round, do the following:


	Divide s into consecutive groups of size k such that the first k characters are in the first group, the next k characters are in the second group, and so on. Note that the size of the last group can be smaller than k.
	Replace each group of s with a string representing the sum of all its digits. For example, "346" is replaced with "13" because 3 + 4 + 6 = 13.
	Merge consecutive groups together to form a new string. If the length of the string is greater than k, repeat from step 1.


Return s after all rounds have been completed.

&nbsp;
Example 1:

Input: s = "11111222223", k = 3
Output: "135"
Explanation: 
- For the first round, we divide s into groups of size 3: "111", "112", "222", and "23".
  ​​​​​Then we calculate the digit sum of each group: 1 + 1 + 1 = 3, 1 + 1 + 2 = 4, 2 + 2 + 2 = 6, and 2 + 3 = 5. 
&nbsp; So, s becomes "3" + "4" + "6" + "5" = "3465" after the first round.
- For the second round, we divide s into "346" and "5".
&nbsp; Then we calculate the digit sum of each group: 3 + 4 + 6 = 13, 5 = 5. 
&nbsp; So, s becomes "13" + "5" = "135" after second round. 
Now, s.length &lt;= k, so we return "135" as the answer.


Example 2:

Input: s = "00000000", k = 3
Output: "000"
Explanation: 
We divide s into "000", "000", and "00".
Then we calculate the digit sum of each group: 0 + 0 + 0 = 0, 0 + 0 + 0 = 0, and 0 + 0 = 0. 
s becomes "0" + "0" + "0" = "000", whose length is equal to k, so we return "000".


&nbsp;
Constraints:


	1 &lt;= s.length &lt;= 100
	2 &lt;= k &lt;= 100
	s consists of digits only.


class Solution:
    def digitSum(self, s: str, k: int) -> str:
        while len(s) > k:
            set_3 = [s[i:i+k] for i in range(0, len(s), k)]
            s = ''
            for e in set_3:
                val = 0
                for n in e:
                    val += int(n)
                s += str(val)
        return s
class Solution {
    public String digitSum(String s, int k) {
        while(s.length() > k) s = gen(s,k);
        return s;
    }
    public String gen(String s,int k){
        String res = "";
        for(int i=0;i < s.length();){
            int count = 0,num=0;
            while(i < s.length() && count++ < k) num += Character.getNumericValue(s.charAt(i++));
            res+=num;
        }
        return res;
    }
}
class Solution {
public:
    string digitSum(string s, int k) {
        
        if(s.length()<=k)
            return s;
        
        string ans="";
        int sum=0,temp=k;
        int len = s.length();
        for(int i=0;i<len;i++){
            sum += (s[i] -'0');
            temp--;
            if(temp==0){
                ans+= to_string(sum);
                temp=k;
                sum=0;
            }
        }
        if(temp!=k){
        ans+= to_string(sum);
        }
        if(ans.length()>k)
            ans = digitSum(ans,k);
        return ans;
    }
};
var digitSum = function(s, k) {
    while (s.length > k) {
        let newString = "";
        for (let i = 0; i < s.length; i += k)
            newString += s.substring(i, i + k).split("").reduce((acc, val) => acc + (+val), 0);

        s = newString;
    }

    return s;
};
Calculate Digit Sum of a String