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 }
Leave a Reply