[๋ฐฑ์ค€/BOJ] 1406๋ฒˆ: ์—๋””ํ„ฐ (JAVA)

2022. 6. 8. 00:58ยท๊ฐœ๋ฐœ/Algorithm

๋ฌธ์ œ ๋งํฌ:

https://www.acmicpc.net/problem/1406

 

1406๋ฒˆ: ์—๋””ํ„ฐ

์ฒซ์งธ ์ค„์—๋Š” ์ดˆ๊ธฐ์— ํŽธ์ง‘๊ธฐ์— ์ž…๋ ฅ๋˜์–ด ์žˆ๋Š” ๋ฌธ์ž์—ด์ด ์ฃผ์–ด์ง„๋‹ค. ์ด ๋ฌธ์ž์—ด์€ ๊ธธ์ด๊ฐ€ N์ด๊ณ , ์˜์–ด ์†Œ๋ฌธ์ž๋กœ๋งŒ ์ด๋ฃจ์–ด์ ธ ์žˆ์œผ๋ฉฐ, ๊ธธ์ด๋Š” 100,000์„ ๋„˜์ง€ ์•Š๋Š”๋‹ค. ๋‘˜์งธ ์ค„์—๋Š” ์ž…๋ ฅํ•  ๋ช…๋ น์–ด์˜ ๊ฐœ์ˆ˜

www.acmicpc.net

 

์†Œ์Šค ์ฝ”๋“œ:

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.Stack;
import java.util.StringTokenizer;

public class Main {

	private Stack<Character> stackL;
	private Stack<Character> stackR;
	
	public Main(Stack<Character> stackL, Stack<Character> stackR) {
		this.stackL = stackL;
		this.stackR = stackR;
	}
	
	public static void main(String[] args) {
		Main main = new Main(new Stack<Character>(), new Stack<Character>());
		
		main.solve();
	}
	
	public void solve() {
		try {
			BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
			BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
			
			String inputStr = br.readLine();
			int m = Integer.parseInt(br.readLine());
			
			// 1. ์ฒ˜์Œ ์ž…๋ ฅ๋ฐ›์€ ๋ฌธ์ž์—ด์„ stackL์— ์ €์žฅ
			for (int i = 0; i < inputStr.length(); i++) {
				stackL.push(inputStr.charAt(i));
			}
			
			// 2. m๋ฒˆ๋งŒํผ ์—๋””ํ„ฐ ์ˆ˜ํ–‰
			while (m-- > 0)
				editor(br.readLine());
			
			// 3. stackL๊ณผ stackR์— ์žˆ๋Š” char ๋ฌธ์ž ํ•ฉ์น˜๊ธฐ
			while (!stackL.isEmpty())
				stackR.push(stackL.pop());
			
			while (!stackR.isEmpty())
				bw.write(stackR.pop());
			
			bw.flush();
			
			bw.close();
			br.close();
			
		} catch (IOException e) {
			e.printStackTrace();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	public void editor(String command) {
		
		switch (String.valueOf(command.charAt(0))) {
		case "L":
			if (stackL.isEmpty()) break;
			stackR.push(stackL.pop());
			break;
			
		case "D":
			if (stackR.isEmpty()) break;
			stackL.push(stackR.pop());
			break;
			
		case "B":
			if (stackL.isEmpty()) break;
			stackL.pop();
			break;
			
		case "P":
			StringTokenizer st = new StringTokenizer(command);
			
			st.nextToken();
			char addChar = st.nextToken().charAt(0);
			
			stackL.push(addChar);
			break;
			
		default:
			break;
		}
	}

}

์ฒ˜์Œ๋ถ€ํ„ฐ ์ปค์„œ ์œ„์น˜ ๋Œ€์‹  stack์„ ์™ผ์ชฝ, ์˜ค๋ฅธ์ชฝ์œผ๋กœ ๋‚˜๋ˆ„์–ด์„œ ์ƒ๊ฐํ–ˆ๋‹ค๋ฉด ๊ฐ„๋‹จํžˆ ํ’€ ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ์˜€๋‹ค. ๐Ÿ˜‚

์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋™์ผ์กฐ๊ฑด (์ƒˆ์ฐฝ์—ด๋ฆผ)

'๊ฐœ๋ฐœ > Algorithm' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] 42586๋ฒˆ: ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ (JAVA)  (0) 2022.06.20
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] 17677๋ฒˆ: ๋‰ด์Šค ํด๋Ÿฌ์Šคํ„ฐ๋ง (JAVA)  (0) 2022.06.20
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] 92334๋ฒˆ: ์‹ ๊ณ  ๊ฒฐ๊ณผ ๋ฐ›๊ธฐ (JAVA)  (0) 2022.06.06
[๋ฐฑ์ค€/BOJ] 15953๋ฒˆ: ์ƒ๊ธˆ ํ—Œํ„ฐ (JAVA)  (0) 2022.06.05
'๊ฐœ๋ฐœ/Algorithm' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] 42586๋ฒˆ: ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ (JAVA)
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] 17677๋ฒˆ: ๋‰ด์Šค ํด๋Ÿฌ์Šคํ„ฐ๋ง (JAVA)
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] 92334๋ฒˆ: ์‹ ๊ณ  ๊ฒฐ๊ณผ ๋ฐ›๊ธฐ (JAVA)
  • [๋ฐฑ์ค€/BOJ] 15953๋ฒˆ: ์ƒ๊ธˆ ํ—Œํ„ฐ (JAVA)
Lily ๐Ÿ‘ฉ‍๐Ÿ’ป
Lily ๐Ÿ‘ฉ‍๐Ÿ’ป
  • Lily ๐Ÿ‘ฉ‍๐Ÿ’ป
    proLOGue
    Lily ๐Ÿ‘ฉ‍๐Ÿ’ป
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (11)
      • ์ผ์ƒ (0)
        • .txt (0)
        • ํ•„์‚ฌ (0)
        • ์‹œ์‚ฌ (0)
        • ๋ฆฌ๋ทฐ (0)
        • ์—ฌํ–‰ (0)
      • ๊ฐœ๋ฐœ (11)
        • Algorithm (5)
        • IDE (2)
        • MSA (0)
        • Design Pattern (0)
        • Cloud Native (1)
        • Database (0)
        • Security (0)
        • Trouble Shooting ๐Ÿš€ (1)
        • Frontend (0)
        • Etc. (2)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ๋ฐฉ๋ช…๋ก
  • ๋งํฌ

  • ๊ณต์ง€์‚ฌํ•ญ

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    websquare
    ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค
    Kubernetes
    ๋ฐ”์ธ๋”ฉ
    ์›น์Šคํ€˜์–ด
    ๋„์ปค
    CLI
    docker
    java
    AWS
    ๊ทธ๋ฆฌ๋“œ
    ๋™์ ํ• ๋‹น
    ํ•ต์‹ฌ๋งŒ ์ฝ•! ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค
    ArrayList
    GitAction
    selecteddata
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
Lily ๐Ÿ‘ฉ‍๐Ÿ’ป
[๋ฐฑ์ค€/BOJ] 1406๋ฒˆ: ์—๋””ํ„ฐ (JAVA)
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”