Jin's Library

[Silver Ⅱ] 5397 - 키로거 본문

Algorithm - Java/BOJ - Silver

[Silver Ⅱ] 5397 - 키로거

Linkin 2025. 9. 30. 00:14
package BOJ.Silver;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.LinkedList;
import java.util.ListIterator;
// 실버 2 키로거
// LinkedList, ListIterator
public class BOJ_5397 {
    public static void main(String[] args) throws Exception{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int T = Integer.parseInt(br.readLine());
        StringBuilder sb = new StringBuilder();
        while(T-->0){
            char[] input = br.readLine().toCharArray();
            LinkedList<Character> list = new LinkedList<>();
            ListIterator<Character> iter = list.listIterator();

            for (Character c : input) {
                if(c == '<'){
                    if(iter.hasPrevious()) iter.previous();
                }else if(c == '>'){
                    if(iter.hasNext()) iter.next();
                }else if(c == '-'){
                    if(iter.hasPrevious()){
                        iter.previous();
                        iter.remove();
                    }
                }else iter.add(c);
            }

            for (Character c : list) sb.append(c);
            sb.append("\n");
        }    
        System.out.println(sb);
    }
}

'Algorithm - Java > BOJ - Silver' 카테고리의 다른 글

[Silver Ⅳ] 9012 - 괄호  (0) 2025.09.30
[Silver Ⅱ] 4963 - 섬의 개수  (0) 2025.09.30
[Silver Ⅳ] 10828 - 스택  (0) 2025.09.30
[Silver Ⅳ] 10866 - 덱  (0) 2025.09.30
[Silver Ⅳ] 18258 - 큐 2  (0) 2025.09.30