반응형

자료구조를 사용하는데 엄청 어려움을 겪었다... 문제 자체는 어렵지 않다.

물론 난 자료구조를 아예 모르기 때문에 인터넷을 뒤져가면서 코딩을 했고 거의 내가 푼게 아니라 남걸 베껴온 수준이지..하하


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
41
42
43
44
import java.io.FileInputStream;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.ListIterator;
import java.util.Scanner;
import java.util.Set;
 
public class Main {
 
    private static Scanner sc;
 
    public static void main(String[] args) throws Exception {
        // TODO Auto-generated method stub
 
        sc = new Scanner(new FileInputStream("input.txt"));
        // sc = new Scanner(System.in);
        int n = sc.nextInt();
 
        Set<String> set = new HashSet<>();    //set을 사용함
        for (int i = 0; i < n; i++) {
            String name = sc.next();
            String commute = sc.next();
 
            if (commute.equals("enter")) {    //enter면 set에 추가를 하고
                set.add(name);
            } else {                        //leave면 set에서 삭제를 한다. 물론 leave밖에 없기에 else문을 사용했다.
                set.remove(name);
            }
        }
        List<String> array = new ArrayList<String>(set);    //sort와 ListIterator를 사용하기 위해 set --> list 작업을 했다.
        Collections.sort(array);    //정렬
        ListIterator<String> iter = array.listIterator(array.size());    //ListInterator를 사용해서 반대로 탐색
 
        
        //Iterator 사용
        while (iter.hasPrevious()) {
            System.out.println(iter.previous());
        }
 
    }
 
}



내가 공부할 부분은 Set, Map, List, Collections, Iterator 정도 되겠다.

반응형

+ Recent posts