C Program for kth largest factor of N (TCS Codevita) | PrepInsta

c program for kth largest factor of n

kth largest factor of N Problem

Seeking for the greatest minds and talents in the country and around TCS organizes a Coding Competition each year called TCS CodeVita. Kth largest factor of N is one of the sample problem of this year TCS CodeVita season 9 competition. This problem can be solved using a counter variable and a variable holding the position for largest factor yet , here we have provided the solution for the above problem in C Language.

Problem Description

Question -: A positive integer d is said to be a factor of another positive integer N if when N is divided by d, the remainder obtained is zero. For example, for number 12, there are 6 factors 1, 2, 3, 4, 6, 12. Every positive integer k has at least two factors, 1 and the number k itself.Given two positive integers N and k, write a program to print the kth largest factor of N.

Input Format: The input is a comma-separated list of positive integer pairs (N, k).

Output Format: The kth highest factor of N. If N does not have k factors, the output should be 1.

Constraints:

  • 1<N<10000000000
  • 1<k<600.

You can assume that N will have no prime factors which are larger than 13.

Example 1

  • Input: 12,3
  • Output: 4

Explanation: N is 12, k is 3. The factors of 12 are (1,2,3,4,6,12). The highest factor is 12 and the third largest factor is 4. The output must be 4.

Example 2

  • Input: 30,9
  • Output: 1

Explanation: N is 30, k is 9. The factors of 30 are (1,2,3,5,6,10,15,30). There are only 8 factors. As k is more than the number of factors, the output is 1.

#include <stdio.h>
void main() 
{
int number,pos_of_factor,i,c=0;
scanf("%d",&number);
scanf("%d",&pos_of_factor);
for(i=number;i>=1;i--)
{
  if((number%i)==0)
  c++;
  if(c==pos_of_factor)
  {
  printf("%d",i);
  break;
  }
}
if(c<pos_of_factor)
printf("1");
}
Output
12,3
4

C++

To find the solution of Kth largest factor of N problem in C++ Programming language click on the button below:

C++

JAVA

To find the solution of Kth largest factor of N problem in Java Programming language click on the button below:

 Java

Python

To find the solution of Kth largest factor of N problem in Python Programming language click on the button below:

 Python

One comment on “C Program for kth largest factor of N (TCS Codevita) | PrepInsta”


  • mevinodrao

    another way in c language
    #include
    int i,j,k,x,y,z,a,b,c,sum=0,flag,flag1,n,arr[10000000];
    int main()
    {
    printf(“enter the positive numbers”);
    scanf(“%d,%d”,&a,&b);
    for(i=1;i<=a;i++)
    {
    if(a%i==0)
    {
    arr[j]=i;
    k=j;
    j++;
    }
    }
    if(b than factors, output is %d\n”,b,1);
    }
    for(j=0;j<=k;j++)
    {
    printf(" %d\t",arr[j]);
    }

    return 0;
    }