Digital Sum – Compress Integer

The program must accept an integer N as the input. The program must compress the integer N by concatenating the digital sum of every two consecutive digits. Then the program must print the modified value of N as the output.

Boundary Condition(s):
10 <= N <= 10^9

Input Format:
The first line contains the value of N.
Output Format:
The first line contains the modified value of N.

Example Input/Output 1:
Input:
208914
Output:
28815

Explanation:
The digital sum of 2 and 0 is 2
The digital sum of 0 and 8 is 8
The digital sum of 8 and 9 is 8
The digital sum of 9 and 1 is 1
The digital sum of 1 and 4 is 5
Hence the output is 28815

Example Input/Output 2:
Input:
1234
Output:
357
Max Execution Time Limit: 1000 millisecs

import java.util.Scanner;

public class Hello {

    // Compute the digital sum of a number
    public static int digitalSum(int x) {
        while (x > 9) {
            x = x % 10 + x / 10;
        }
        return x;
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String input = scanner.next();

        for (int i = 0; i < input.length() - 1; i++) {
            int sum = Character.getNumericValue(input.charAt(i)) + Character.getNumericValue(input.charAt(i + 1));
            System.out.print(digitalSum(sum));
        }
    }
}
#include <stdio.h>
#include <string.h>

// Compute the digital sum of a number
int digitalSum(int x) {
    while (x > 9) {
        x = x % 10 + x / 10;
    }
    return x;
}

int main() {
    char input[100]; // Assuming input length is less than 100
    scanf("%s", input);
    int length = strlen(input);

    for (int i = 0; i < length - 1; i++) {
        int sum = (input[i] - '0') + (input[i + 1] - '0');
        printf("%d", digitalSum(sum));
    }

    return 0;
}
#include <iostream>
#include <string>

// Compute the digital sum of a number
int digitalSum(int x) {
    while (x > 9) {
        x = x % 10 + x / 10;
    }
    return x;
}

int main() {
    std::string input;
    std::cin >> input;

    for (int i = 0; i < input.length() - 1; i++) {
        int sum = (input[i] - '0') + (input[i + 1] - '0');
        std::cout << digitalSum(sum);
    }

    return 0;
}
def digital_sum(x):
    """Compute the digital sum of a number."""
    while x > 9:
        x = x % 10 + x // 10
    return x

def main():
    input_str = input()

    for i in range(len(input_str) - 1):
        sum_val = int(input_str[i]) + int(input_str[i + 1])
        print(digital_sum(sum_val), end="")

if __name__ == "__main__":
    main()

Leave a Reply

Your email address will not be published. Required fields are marked *

More posts. You may also be interested in.