import java.util.Map; import java.util.TreeMap; public class Test { private static final int MAX_PRIO = 3; private static boolean[] toogle= new boolean[MAX_PRIO+1]; private static int[] normAnteil= new int[MAX_PRIO+1]; private static Map proc=new TreeMap(); private static boolean schedule(int prio){ if(!proc.containsKey(prio)||prio>MAX_PRIO)return false; toogle[prio]=!toogle[prio]; boolean x=true; if(proc.get(prio)<=((sum/Math.pow(2,prio+1)))||proc.get(prio)==0){ x=!schedule(prio+1); } if(x){ System.out.print(prio+" "); proc.put(prio,proc.get(prio)-1); sum--; return true; } return true; } /** * @param args: 4 prozesse der priorität 2, 3 der prio 1, 1 der prio 0, 0 */ public static void main(String[] args) { //prio,anzahl proc.put(0,1); proc.put(1,1); proc.put(2,1); proc.put(3,20); scosusMultiplikatording(); int y=calcSum(); sum=calcSum(); calcNormAnteil(); System.out.println(y); for(int i=0;i