Ejemplo n.º 1
0
  private static void readFile(String name) {
    try {

      BufferedReader br = new BufferedReader(new FileReader(name));

      String line;

      line = br.readLine();
      String[] ints = line.split(" ");
      rows = Integer.parseInt(ints[0]);
      cols = Integer.parseInt(ints[1]);
      dronesCount = Integer.parseInt(ints[2]);
      turns = Integer.parseInt(ints[3]);
      maxLoad = Integer.parseInt(ints[4]);

      productTypes = Integer.parseInt(br.readLine());

      productWeigths = new int[productTypes];
      ints = br.readLine().split(" ");
      for (int i = 0; i < productTypes; i++) {
        productWeigths[i] = Integer.parseInt(ints[i]);
      }

      warehouseCount = Integer.parseInt(br.readLine());
      warehouses = new ArrayList<>();
      for (int i = 0; i < warehouseCount; i++) {
        ints = br.readLine().split(" ");
        WareHouse w = new WareHouse(i);
        w.x = Integer.parseInt(ints[0]);
        w.y = Integer.parseInt(ints[1]);

        ints = br.readLine().split(" ");
        for (int j = 0; j < productTypes; j++) {
          int n = Integer.parseInt(ints[j]);
          for (int k = 0; k < n; k++) w.products.add(new Product(j, productWeigths[j]));
        }

        warehouses.add(w);
      }

      orderCount = Integer.parseInt(br.readLine());

      orders = new ArrayList<>();
      for (int i = 0; i < orderCount; i++) {
        Order order = new Order(i);
        ints = br.readLine().split(" ");
        order.x = Integer.parseInt(ints[0]);
        order.y = Integer.parseInt(ints[1]);

        int n = Integer.parseInt(br.readLine());
        ints = br.readLine().split(" ");
        for (int j = 0; j < n; j++) {
          int type = Integer.parseInt(ints[j]);
          order.products.add(new Product(type, productWeigths[type]));
        }

        orders.add(order);
      }

      for (int i = 0; i < dronesCount; i++) {
        drones.add(new Drone(warehouses.get(0).x, warehouses.get(0).y, i));
      }

      while ((line = br.readLine()) != null) {
        System.out.println(line);
      }
    } catch (IOException e) {
      System.out.println("error reading file " + e.getMessage());
    }
  }