알고리즘/백준
[백준] 5397. 키로거
vivi
2021. 10. 27. 04:03
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.LinkedList;
import java.util.ListIterator;
class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
LinkedList<Character> list = new LinkedList<>();
ListIterator<Character> iter = list.listIterator();
int n = Integer.parseInt(br.readLine());
for (int i = 0; i < n; i++) {
for (char c : br.readLine().toCharArray()) {
switch (c) {
case '<':
if (iter.hasPrevious())
iter.previous();
break;
case '>':
if (iter.hasNext())
iter.next();
break;
case '-':
if (iter.hasPrevious()) {
iter.previous();
iter.remove();
}
break;
default:
iter.add(c);
break;
}
}
for (char c : list) {
bw.write(c);
}
list.clear();
iter = list.listIterator();
bw.write('\n');
}
bw.flush();
br.close();
bw.close();
}
}