# HackerRank Viral Advertising problem solution

In this HackerRank Viral Advertising problem, you need to determine how many people have liked the ad by the end of a given day, beginning with launch day as day 1.

## Problem solution in Python programming.

```import math
input_str = input()
try:
nbr = int(input_str)
except:
print("An exception occurred while parsing input as integer.")
if nbr <= 0 or nbr >= 51:
result = 0
people = 5
for day in range(1, nbr + 1):
half = math.floor(people / 2)
result += half
people = 3 * half
print(result)```

## Problem solution in Java Programming.

```import java.io.*;
import java.util.*;

public class Solution {

public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int sum=0;
while(n-- >0){
sum+=remaining;
}
System.out.println(sum);

}
}```

### Problem solution in C++ programming.

```#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;

int main() {
/* Enter your code here. Read input from STDIN. Print output to STDOUT */
int n;
cin>>n;

int m = 5;
int total;
for(int i=0; i<n; ++i){
m = m/2;
total += m;
m *= 3;
}

cout<<total<<endl;
return 0;
}```

### Problem solution in C programming.

```#include <stdio.h>
#include <string.h>
#include <math.h>
#include <stdlib.h>

int main()
{

int n,i,t1=0,t2=0,sum=0,m=5;
scanf("%d",&n);

for(i=0;i<n;i++)
{
t1 = m/2;
m = t1*3;
sum += t1;
}

printf("%d",sum);

/* Enter your code here. Read input from STDIN. Print output to STDOUT */
return 0;
}```

### Problem solution in JavaScript programming.

```function processData(input) {
var n = parseInt(input), result = 0;

function totalLikes(people, n){
var liked = Math.floor(people / 2);
result += liked;
if(n > 1){
totalLikes(liked * 3, --n);
}
}

totalLikes(5, n);

console.log(result);
}

process.stdin.resume();
process.stdin.setEncoding("ascii");
_input = "";
process.stdin.on("data", function (input) {
_input += input;
});

process.stdin.on("end", function () {
processData(_input);
});```