Timer is Running

Kth Smallest Factor
Submissions: 40   Accuracy:


  Difficulty: Medium   Marks: 4

GIven two positive integers N and K. You have to find the Kth smallest factor of N. A factor of N is a positive integer which divides N. Output the Kth smallest factor of N if it exists otherwise print -1.


Example 1:

Input : N = 4 , K = 2
Output: 2
All factors of 4 are 1,2 and 4. Out of
these 2 is the 2nd smallest.

Example 2:

Input : N = 4 , K = 3
Output: 4
All factors of 4 are 1,2 and 4. Out of
these 4 is the 3rd smallest.


Your Task:
You don't need to read input or print anything. Your task is to complete the function kThSmallestFactor() which takes 2 Integers N and K as input and returns the answer.


Expected Time Complexity: O(sqrt(N))
Expected Auxiliary Space: O(1)


1 <= N <= 106
1 <= K <= 106

** For More Input/Output Examples Use 'Expected Output' option **

Author: Hemang Sarkar

If you have purchased any course from GeeksforGeeks then please ask your doubt on course discussion forum. You will get quick replies from GFG Moderators there.

Need help with your code? Please use ide.geeksforgeeks.org, generate link and share the link here.

to report an issue on this page.