Max Min – HackerRank Solution Java , Python 3, Python 2 , C , C++, Best and Optimal Solutions , All you need.
Solutions of Algorithms Data Structures Hard HackerRank:
Here are all the Solutions of Hard , Advanced , Expert Algorithms of Data Structure of Hacker Rank , Leave a comment for similar posts
1 Month Preparation Kit Solutions – HackerRank
C++ Max Min HackerRank Solution
#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
int arr[100010];
int main() {
/* Enter your code here. Read input from STDIN. Print output to STDOUT */
int n,k;
cin>>n>>k;
for(int i=0;i<n;i++)cin>>arr[i];
sort(arr,arr+n);
int ans=1e9;
for(int i=k-1;i<n;i++){
ans=min(arr[i]-arr[i-k+1],ans);
}
cout<<ans<<endl;
return 0;
}
Java Max Min HackerRank Solution
import java.io.*;
import java.math.*;
import java.security.*;
import java.text.*;
import java.util.*;
import java.util.concurrent.*;
import java.util.regex.*;
public class Solution {
// Complete the maxMin function below.
static int maxMin(int k, int[] arr) {
int min=1000000000;
Arrays.sort(arr);
for(int i=0;i<arr.length-k+1;i++){
min=Math.min(min,arr[i+k-1]-arr[i]);
}
return min;
}
private static final Scanner scanner = new Scanner(System.in);
public static void main(String[] args) throws IOException {
BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(System.getenv("OUTPUT_PATH")));
int n = scanner.nextInt();
scanner.skip("(\r\n|[\n\r\u2028\u2029\u0085])?");
int k = scanner.nextInt();
scanner.skip("(\r\n|[\n\r\u2028\u2029\u0085])?");
int[] arr = new int[n];
for (int i = 0; i < n; i++) {
int arrItem = scanner.nextInt();
scanner.skip("(\r\n|[\n\r\u2028\u2029\u0085])?");
arr[i] = arrItem;
}
int result = maxMin(k, arr);
bufferedWriter.write(String.valueOf(result));
bufferedWriter.newLine();
bufferedWriter.close();
scanner.close();
}
}
Python 3 Max Min HackerRank Solution
#!/usr/bin/env python
import collections, sys
if __name__ == '__main__':
N = int(sys.stdin.readline())
K = int(sys.stdin.readline())
x = sorted(int(sys.stdin.readline()) for _ in range(N))
print(min(x[i + K - 1] - x[i] for i in range(0, N - K - 1)))
JavaScript Max Min HackerRank Solution
function processData(input) {
var cases = input.trim().split("\n"),
N = - -cases.shift(),
K = - -cases.shift(),
result;
for (var i = 0; i < N; i++) {
cases[i] = - -cases[i];
}
cases.sort(function(a,b){return a-b});
result = cases[K-1] - cases[0];
for (var i = K; i < N; i++) {
result = Math.min(result, cases[i] - cases[i-K+1]);
}
console.log(result);
}
process.stdin.resume();
process.stdin.setEncoding("ascii");
_input = "";
process.stdin.on("data", function (input) {
_input += input;
});
process.stdin.on("end", function () {
processData(_input);
});
C Max Min HackerRank Solution
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <stdlib.h>
int compare2uints(const void * a, const void * b) {
return ( *(unsigned int*)a - *(unsigned int*)b );
}
int main() {
int n,k,i;
unsigned int x[100001];
unsigned int j,minunfair;
if (scanf(" %d",&n) != 1) return 1;
if (scanf(" %d",&k) != 1) return 1;
for (i=0; i<n; i++) if (scanf(" %d",x+i) != 1) return 1;
if (k==1) return 0;
qsort(x, n, sizeof(int), compare2uints);
minunfair = 0x7fffffff;
i = 0;
j = k-1;
while (j<n) {
if (x[j]-x[i]<minunfair) minunfair=x[j]-x[i];
i++;
j++;
}
printf("%u\n",minunfair);
return 0;
}
Leave a comment below