μ•Œκ³ λ¦¬μ¦˜πŸˆ

λ¬Έμ œν’€μ΄[Queue] - λ°•μŠ€ 포μž₯, λ¬Έμžμ—΄ λ³€κ²½ν•˜κΈ°

Jeein0313 2023. 7. 18. 11:45

λ°•μŠ€ 포μž₯

 

λ°•μŠ€ 포μž₯을 μœ„ν•΄ 일렬둜 μ„œ μžˆμ„ λ•Œ, λ’·μ‚¬λžŒμ΄ 포μž₯이 λͺ¨λ‘ λλ‚˜λ„ μ•žμ‚¬λžŒμ˜ 포μž₯을 κΈ°λ‹€λ €μ•Ό ν• λ•Œ, μ΅œλŒ€ λͺ‡ λͺ…이 같이 λ‚˜κ°ˆ 수 μžˆλŠ”μ§€λ₯Ό κ΅¬ν•˜λŠ” 문제.

 

public static int paveBox(int[] boxes){
    //같이 λ‚˜κ°ˆ 수 μžˆλŠ” μ‚¬λžŒμ˜ 수
    List<Integer> listQueue = new ArrayList<>();

    ArrayList<Integer> answerList = new ArrayList<>();
    for(int i=0;i<boxes.length;i++){
        listQueue.add(boxes[i]);
    }

    boolean isMax=false;
    for(int i=0;i<listQueue.size();i++){
        if(listQueue.get(0)<listQueue.get(i)){
            isMax=true;
            answerList.add(i);
            listQueue = listQueue.subList(i, listQueue.size());
            System.out.println(listQueue);
        }
    }

    if(isMax==false){
        answerList.add(listQueue.size());
    }

    return Collections.max(answerList);

}

 

 

λ¬Έμžμ—΄ λ³€κ²½ν•˜κΈ°

 

 public static String StringTransform(String str){
    Queue<Character> queue = new LinkedList<>();
    StringBuilder sb = new StringBuilder();
    for(int i=0;i<str.length();i++){
        queue.add(str.charAt(i));
    }

    while(!queue.isEmpty()){
        sb.append(queue.poll());
        if(!queue.isEmpty()){
            queue.add(queue.poll());
        }
    }
    return sb.toString();
}