Advertisement
Guest User

zashkvar

a guest
Mar 29th, 2017
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.95 KB | None | 0 0
  1. private Pair<Integer> createAdMap(Pair<Integer> hw, int qnty) {
  2.         int rows = 0;
  3.         int cols = 0;
  4.         int avalRows = hw.getFirst();
  5.         int avalCols = hw.getSecond();
  6.         for (int i = 1; i < avalRows; i++) {
  7.             int tmpCols = (int) Math.ceil((qnty + .0) / (i + .0));
  8.             if (tmpCols <= avalCols && i > 1 && tmpCols > 1 && tmpCols > cols) {
  9.                 rows = i;
  10.                 cols = (int) Math.ceil((qnty + .0) / (i + .0));
  11.             }
  12.         }
  13.         System.out.println("ok");
  14.         return new Pair<>(rows, cols);
  15.     }
  16.  
  17.     private Pair<Integer> checkCapacity(int adH, int adW) throws OutOfBoardException {
  18.         int freeW = width;
  19.         int cntW = 0;
  20.         int cntH = 0;
  21.         int freeH = height;
  22.         //cntW = freeW /
  23.         if (freeW >= adW) {
  24.             freeW -= adW;
  25.             cntW++;
  26.             while (freeW >= adW - 3) {
  27.                 freeW -= adW - 3;
  28.                 cntW++;
  29.             }
  30.         }
  31.         if (freeH >= adH) {
  32.             freeH -= adH;
  33.             cntH++;
  34.             while (freeH >= adH - 3) {
  35.                 freeH -= adH - 3;
  36.                 cntH++;
  37.             }
  38.         }
  39.         if (cntH * cntW >= ads.size()) {
  40.             System.out.println("checked");
  41.             return new Pair<>(cntH, cntW);
  42.         } else {
  43.             throw new OutOfBoardException();
  44.         }
  45.     }
  46.  
  47.     public void setAds(int quanity, int adH, int adW) throws OutOfBoardException {
  48.         Pair adaptedSize = checkCapacity(adH, adW);
  49.         Pair adMap = createAdMap(adaptedSize, quanity);
  50.         System.out.println("Max size: " + adaptedSize);
  51.         System.out.println("Adapted size: " + adMap);
  52.         int cnt = ads.size();
  53.         for (int i = 0; i < (int) adMap.getFirst(); i++) {
  54.             for (int j = 0; j < (int) adaptedSize.getSecond(); j++) {
  55.                 int x = (j == 0) ? 0 :;
  56.                 int y =
  57.             }
  58.         }
  59.  
  60.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement