Untitled
unknown
java
2 years ago
1.6 kB
7
Indexable
package com.epam.collections.queue; import java.util.ArrayList; import java.util.List; import java.util.PriorityQueue; import java.util.Queue; public class DishOrderDeterminer { public List<Integer> determineDishOrder(int numberOfDishes, int everyDishNumberToEat) { Queue<Integer> queue = new PriorityQueue<>(); for (int i = 1; i <= numberOfDishes; i++) { queue.add(i); } List<Integer> list = new ArrayList<>(); int sizeOfQueue = queue.size(); int sizeOfNewQueue = sizeOfQueue; int indexOfSeq = 1; for (int i = 0; i < sizeOfQueue; i++) { PriorityQueue<Integer> queue1 = new PriorityQueue(); for (int j = 1; j <= sizeOfNewQueue; j++) { if (indexOfSeq % everyDishNumberToEat == 0) { list.add(queue.remove()); indexOfSeq = 1; } else { queue1.add(queue.remove()); indexOfSeq++; } } sizeOfNewQueue = queue1.size(); queue.addAll(queue1); } return list; } }
Editor is loading...