X DAYS

:

HOUR

:

MINS

:

SEC

Copied to Clipboard
Faithful Numbers
Easy Accuracy: 55.9% Submissions: 2162 Points: 2

A number is called faithful if you can write it as the sum of distinct powers of 7.
e.g.,  2457 = 7 + 72 + 74 . If we order all the faithful numbers, we get the sequence 1 = 70, 7 = 71, 8 = 70 + 71, 49 = 72, 50 = 70 + 72 . . . and so on.
Given some value of N, you have to find the N'th faithful number.

Example 1:

Input:
N = 3
Output:
8
Explanation:
8 is the 3rd Faithful number.

Example 2:

Input:
N = 7
Output:
57
Explanation:
57 is the 7th Faithful number.

You don't need to read input or print anything. Your task is to complete the function nthFaithfulNum() which takes an Integer N as input and returns the answer.

Expected Time Complexity: O(log(N))
Expected Auxiliary Space: O(log(N))

Constraints:
1 <= N <= 105

We are replacing the old Disqus forum with the new Discussions section given below.

Editorial

We strongly recommend solving this problem on your own before viewing its editorial. Do you still want to view the editorial?

My Submissions:  