Advertisement
saurav_kalsoor

Typing Speed - JAVA

Dec 21st, 2021
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.09 KB | None | 0 0
  1. // Author : Saurav Kalsoor
  2. // Typing Speed
  3.  
  4. import java.util.*;
  5.  
  6. public class Test {
  7.  
  8.     static Scanner sc = new Scanner(System.in);
  9.  
  10.     public static void main(String[] args) {
  11.  
  12.         int n = sc.nextInt();
  13.         int h = sc.nextInt();
  14.         int[] words = new int[n];
  15.  
  16.         for(int i=0; i<n; i++){
  17.             words[i] = sc.nextInt();
  18.         }
  19.  
  20.         int result = typingSpeed(n, h, words);
  21.         System.out.println(result);
  22.     }
  23.  
  24.     public static int typingSpeed(int n, int h, int[] words){
  25.         int low = 1, high = 1000000000, k = 1000000000;
  26.  
  27.         while(low <= high){
  28.             int mid = low + (high - low) / 2;
  29.  
  30.             int requiredH = getH(n, mid, words);
  31.  
  32.             if(requiredH <= h){
  33.                 k = mid;
  34.                 high = mid-1;
  35.             }else{
  36.                 low = mid+1;
  37.             }
  38.         }
  39.         return k;
  40.     }
  41.  
  42.     public static int getH(int n, int k, int[] words){
  43.         int h = 0;
  44.         for(int i=0; i < n; i++){
  45.             h += Math.ceil(words[i]/(k*1.0));
  46.         }
  47.         return h;
  48.     }
  49.  
  50. }
  51.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement