There is a strange counter. At the first second, it displays the number 3. Each second, the number displayed by decrements by 1 until it reaches 1. In next second, the timer resets to 2*the initial number for the prior cycle and continues counting down. The diagram below shows the counter values for each time t in the first three cycles:
Find and print the value displayed by the counter at time t.
Function Description
Complete the strangeCounter function in the editor below.
strangeCounter has the following parameter(s):
int t: an integer
Returns
int: the value displayed at time t
Input Format
A single integer, the value of t.
Sample Input
4
Sample Output
6
Explanation
Time t=4 marks the beginning of the second cycle. It is double the number displayed at the beginning of the first cycle:2*3=6. This is shown in the diagram in the problem statement.
Strange Counter HackerRank Solution in C
#include <stdio.h> #include <string.h> #include <math.h> #include <stdlib.h> int main() { long long n,f=3; scanf("%lld",&n); while(n>f) n-=f,f*=2; printf("%lld\n",f-n+1); return 0; }
Strange Counter HackerRank Solution in C++
#include <cmath> #include <cstdio> #include <vector> #include <iostream> #include <algorithm> using namespace std; int main() { long long cnt = 3; long long x; cin >> x; while(x > cnt) { x -= cnt; cnt *= 2; } cout << cnt - x + 1 << endl; return 0; }
Strange Counter HackerRank Solution in Java
import java.io.*; import java.util.*; import java.text.*; import java.math.*; import java.util.regex.*; public class Solution { public static void main(String[] args) { Scanner sc = new Scanner(System.in); long t = sc.nextLong(); long curr = 3; while (t > curr) { t -= curr; curr *= 2; } System.out.println(curr-t+1); } }
Strange Counter HackerRank Solution in Python
# Enter your code here. Read input from STDIN. Print output to STDOUT t = int(raw_input()) phase = 3 while t > phase: t -= phase phase *= 2 print phase - t + 1
Attempt Strange Counter HackerRank Solution
Link – https://www.hackerrank.com/challenges/strange-code/
Next HackerRank Challenge Solution
Link – https://exploringbits.com/3d-surface-area-hackerrank-solution/
Aayush Kumar Gupta is the founder and creator of ExploringBits, a website dedicated to providing useful content for people passionate about Engineering and Technology. Aayush has completed his Bachelor of Technology (Computer Science & Engineering) from 2018-2022. From July 2022, Aayush has been working as a full-time Devops Engineer.