Mars Exploration Hacker Rank Solution Best & Easiest

Mars Exploration Problem Solution
Mars Exploration Problem Solution

In this post, we will solve Mars Exploration HackerRank Solution. This problem (Mars Exploration) is a part of HackerRank Problem Solving series.

A space explorer’s ship crashed on Mars! They send a series of SOS messages to Earth for help.

Letters in some of the SOS messages are altered by cosmic radiation during transmission. Given the signal received by Earth as a string, s, determine how many letters of the SOS message have been changed by radiation.

Example

s = ‘SOSTOT’

The original message was SOSSOS. Two of the message’s characters were changed in transit.

Function Description

Complete the marsExploration function in the editor below.

marsExploration has the following parameter(s):

  • string s: the string as received on Earth

Returns

  • int: the number of letters changed during transmission

Input Format

There is one line of input: a single string, s.

Constraints

  • 1 <= length of s <= 99
  • length of s modulo 3 = 0
  • s will contain only uppercase English letters, ascii[A-Z].

Sample Input 0

SOSSPSSQSSOR

Sample Output 0

3

Explanation 0

s = SOSSPSSQSSOR, and signal length |s| = 12. They sent 4 SOS messages (i.e.: 12/3 = 4).

Expected signal: SOSSOSSOSSOS
Recieved signal: SOSSPSSQSSOR
Difference:          X  X   X

Sample Input 1

SOSSOT

Sample Output 1

1

Explanation 1

s = SOSSOT, and signal length |s| = 6. They sent 2 SOS messages (i.e.: 6/3 = 2).

Expected Signal: SOSSOS     
Received Signal: SOSSOT
Difference:           X

Sample Input 2

SOSSOSSOS

Sample Output 2

0

Explanation 2

Since no character is altered, return 0.

Counting Valleys Hacker Rank Solution

Problem solution in Python programming:

def marsExploration(s):
    l,st,flag,count = len(s)-1,"sos",0,0
    while(l>=0):
        if flag == 3:
            flag = 0
        if st[flag] != s[l].lower():
            count += 1
        flag += 1
        l -= 1
    return(count)

Problem solution in C++ programming:

public static int marsExploration(String s) {
    // Write your code here

        int sum = 0;
        int i = 0;
        
        while(i<s.length()){
            if(s.charAt(i) != 'S'){
                sum++;
            }
            if(s.charAt(i+1) != 'O'){
                sum++;
            }
            if(s.charAt(i+2) != 'S'){
                sum++;
            }
            i+=3;
        }
        
        return sum;
    }

Problem solution in JavaScript programming:

function marsExploration(s) {
    // Write your code here
    let mess = 'SOS', expected_mess = '';
    let len = s.length  / 3, count = 0;
    // To create Expected message
    while(len--) {
        expected_mess+=mess;
    }
    for(let i=0; i<expected_mess.length; i++){
        if(s[i] !== expected_mess[i])
            count++;
    }
    return count

}