-
백준 17413 - 단어뒤집기2자료구조와 알고리즘/문제풀기 2023. 4. 5. 13:20
원래 단어 뒤집는 문제에서 <>일때는 그대로 출력하는 것이 추가된 것 뿐이다.
public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); String input = br.readLine()+'\n'; Stack ss = new Stack(); Stack ss2 = new Stack(); boolean flag = false; //괄호가 시작된건지 아닌지 확인 for(char a: input.toCharArray()){ if (a == ' ' || a == '\n' ||a == '<'||a=='>') {//개행,공백,괄호시작,끝 만나면 while (!ss.empty()) { // 일단 스택에 있는 문자 모두 퉤 bw.write(ss.pop() + ""); } if(a!='<'&&a!='>'&&!flag)//괄호안에 공백이나 개행 출력가능성 때문에 괄호 안에서는 못하게 막기 bw.write(a + ""); } else if(!flag) ss.push(a); //괄호 안이 아닐때만 추가 if(a == '<' || flag){ //괄호 시작 알림 flag = true; bw.write(a); //문자 그대로 출력 } if (a == '>'){ //괄호 끝 알림 flag =false; } } bw.flush(); bw.close(); }
'자료구조와 알고리즘 > 문제풀기' 카테고리의 다른 글
백준 10430 - 나머지 (0) 2023.04.10 백준 10799 - 쇠막대기 (0) 2023.04.05 백준 1158 - 요세푸스 문제 (0) 2023.04.05 백준 10845 - 큐 구현 (0) 2023.04.05 백준 1406 - 에디터 (0) 2023.04.05