Advertisement
Guest User

Untitled

a guest
Oct 20th, 2017
50
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.70 KB | None | 0 0
  1. import java.io.IOException;
  2. import java.util.Arrays;
  3. import java.util.Locale;
  4. import java.util.Scanner;
  5.  
  6. public class Program {
  7.  
  8.  
  9.  
  10. public void start() throws IOException {
  11.  
  12. Scanner sc = new Scanner(System.in);
  13.  
  14. while(sc.hasNext()){
  15.  
  16. int numberOfFrontSprockets = sc.nextInt();
  17. if (numberOfFrontSprockets == 0) System.exit(0);
  18. int numberOfRearSprockets = sc.nextInt();
  19.  
  20. int[] frontTeeth = new int[numberOfFrontSprockets];
  21. int[] rearTeeth = new int[numberOfRearSprockets];
  22.  
  23. for(int i = 0; i < numberOfFrontSprockets; i++){
  24. frontTeeth[i] = sc.nextInt();
  25. }
  26.  
  27. for(int i = 0; i < numberOfRearSprockets; i++){
  28. rearTeeth[i] = sc.nextInt();
  29. }
  30.  
  31. int totalNumberOfSprockets = numberOfFrontSprockets * numberOfRearSprockets;
  32. double[] spread = new double[totalNumberOfSprockets];
  33. int spreadCounter = 0;
  34.  
  35. for(int i = 0; i < numberOfFrontSprockets; i++){
  36. for(int j = 0; j < numberOfRearSprockets; j++){
  37. double spreadValue = ((double) rearTeeth[j]) / ((double) frontTeeth[i]);
  38. spread[spreadCounter] = spreadValue;
  39. spreadCounter++;
  40. }
  41. }
  42.  
  43. Arrays.sort(spread);
  44.  
  45. double maxSpread = 0;
  46. for(int i = 0; i < spread.length - 1; i++){
  47. maxSpread = (spread[i+1] / spread[i]) > maxSpread ? (spread[i+1] / spread[i]) : maxSpread;
  48. }
  49.  
  50. Locale.setDefault(Locale.US);
  51. System.out.printf("%.2f%n", maxSpread);
  52.  
  53. }
  54.  
  55. }
  56. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement