강의로 돌아가기
서재영

제가 문제를 잘못이해한걸까요.. 어디가 틀린걸까요?(java)

반타작했는데 어떤 문제가 있는건가요

작성중인 코드―Solution.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import java.util.*;

class Solution {   
    public int solution(int[] priorities, int location) {
         int answer = 0; 
        int max =0, maxidx =0;
        Queue<Integer> q = new LinkedList<>();

        for(int i = 0; i < priorities.length; i++){
            if(priorities[i] > priorities[location]){
                answer++;
            }else if(priorities[i] == priorities[location]){
                q.add(i);
            }
            if(max <priorities[i]){
                max = priorities[i];
                maxidx = i;
            }
        }
        //System.out.println(max +"," + maxidx);
        if(maxidx ==location )
            return 1;                       
        int q_size = q.size();       
        for(int i=0; i < q_size; i++){
            if(maxidx > q.peek()){
                q.offer(q.poll());          
            }   
        }
        while(true){
            if(location == q.peek())
                break;
            else{
                q.poll();
                answer++;
            }
        }
        //System.out.println(answer);
        return ++answer;        
    }
}
0 개의 답변
답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.