Header Ads Widget

Greatest number at least K times the others | Hexaware coding question

Greatest number at least K times the others | Hexaware coding question 

You are given an array A of numbers of size N. Your task is to determine whether the maximum value of the array is at least K times every other number in the array.  If the above condition is fulfilled, then print the index of the maximum number .  otherwise, print -1 as output.

Note:

  • Indexing starts from 0.
  • The largest element in the array is unique.

Input format:

The input consists of two lines:

  • The first line contains two integers N and K.
  • The second line contains N space-separated integers denoting the elements of the array A. 

Output Format:

There exists a maximum number that satisfies the given condition then print the index of that number otherwise print "-1". 

Constraints:

  • 1≤ N ≤ 106
  • 0≤K≤ 100.
  • 0 ≤ A[i] ≤ 105.

Example:

Input:

4 2

3 6 1 0

Output:

1

Explanation:

6 is the largest number in the array.
For every other number 'x' in the array, 6 is at least twice as big as 'x'.
The index of value 6 is 1, so the output is 1.

Code(C++):-
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,k;
cin>>n>>k;
int a[n],max=-1,in;
for(int i=0;i<n;i++)
{
cin>>a[i];
if(max<a[i])
{
max=a[i];
in=i;
}
}
int flag=0;
for(int i=0;i<n;i++)
{
if(a[i]==max || a[i]*k<=max)
continue;
else
{
flag=1;
break;
}
}
if(flag==0)
cout<<in<<endl;
else
cout<<-1<<endl;
return 0;
}
Output:-
10 2
1 2 3 4 9 8 7 6 12 25
9



Code(java) :-
import java.util.*;

public class Main{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
int n,k;
n=sc.nextInt();
k=sc.nextInt();
int[] arr=new int[n];
int max=-1,in=0;
for(int i=0;i<n;i++)
{
arr[i]=sc.nextInt();
if(max<arr[i])
{
max=arr[i];
in=i;
}
}
int flag=0;
for(int i=0;i<n;i++)
{
if(max==arr[i] || arr[i]*k<=max)
continue;
else
{
flag=1;
break;
}
}
if(flag==0)
System.out.println(in);
else
System.out.println(-1);
}
}


Recommended Post :-

HCL Coding Questions:-

Capgemini Coding Questions:-

Companies interview:-

Full C course:-    

Key points:-

Cracking the coding interview:-

 Array and string:-

Tree and graph:-

Hackerearth Problems:-

Hackerrank Problems:-

Data structure:-

 MCQs:-