classSolution{publicbooleanlemonadeChange(int[] bills){int five =0, ten =0;for(int bill : bills){//情况一if(bill ==5) five ++;//情况二if(bill ==10){if(five <=0)returnfalse;
ten ++;
five --;}//情况三if(bill ==20){// 优先消耗10美元,因为5美元的找零用处更大,能多留着就多留着if(five >0&& ten >0){
five --;
ten --;}elseif(five >=3){
five -=3;}else{returnfalse;}}}returntrue;}}
406 根据身高重建队列
classSolution{publicint[][]reconstructQueue(int[][] people){// 身高从大到小排(身高相同k小的站前面)Arrays.sort(people,(a, b)->{if(a[0]== b[0])return a[1]- b[1];return b[0]- a[0];});LinkedList<int[]> que =newLinkedList<>();for(int[] p : people){
que.add(p[1],p);}return que.toArray(newint[people.length][]);}}