반응형
public class algo {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
Queue<Integer> q = new LinkedList<>();
int i = 0;
sc.nextLine();
while (i < num) {
String comand = sc.nextLine();
StringTokenizer st = new StringTokenizer(comand, " ");
String firstHalf = st.nextToken();
String secondHalf = "";
if(st.hasMoreElements()) {
secondHalf= st.nextToken();
}
switch (firstHalf) {
case "push":
q.add(Integer.parseInt(secondHalf));
break;
case "pop":
System.out.println(q.isEmpty() ? -1 : q.poll());
break;
case "size":
System.out.println(q.size());
break;
case "empty":
System.out.println(q.isEmpty() ? 1 : 0);
break;
case "front":
if(q.isEmpty()){
System.out.println("-1");
} else {
System.out.println(((LinkedList<Integer>) q).getFirst());
}
break;
case "back":
if(q.isEmpty()){
System.out.println("-1");
} else {
System.out.println(((LinkedList<Integer>) q).getLast());
}
break;
default:
System.out.println("Error");
break;
}
i++;
}
}
}
처음에는 큐 배열을 직접 만들어보려다가.. 포기
알고리즘 강의를 들으면 큐 스택 같은 것을 직접 구현하기도 하나..?
한번 시간내서 해볼까 하는 생각도 든다.
10845 | 맞았습니다!! | 44316 KB | 460 MS |
반응형
'개발문제해결 > 알고리즘 문제풀이' 카테고리의 다른 글
백준 10866 - 덱 (0) | 2018.05.07 |
---|---|
백준 10799 - 쇠막대기 (0) | 2018.05.01 |
백준 9012번 - 괄호 (0) | 2018.02.25 |