[백준] 12904번 A와 B JAVA 풀이

권용환·2021년 11월 30일
0

백준

목록 보기
29/36
post-thumbnail

문제 바로가기

나의 풀이

A를 B로 바꾸는 것보다 B를 A로 만들어가는 문제이다.

A를 B로 만들어가려면 2가지 경우에 대해 모두 고려해야하는 반면에 B에서 A로 가는 경우는 끝자리의 문자가 'A'인지 'B'인지에 따라 한가지의 경우만 고려하면 되기 때문이다.

문자열의 길이가 같아질 때까지만 B를 줄여나가다가 길이가 같아졌을 때, A와 B를 비교하여 0 또는 1을 출력한다.


나의 코드

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

class Main {

	public static void main(String[] args) throws IOException {

		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String s = br.readLine();
		String t = br.readLine();
		
		while (s.length() < t.length()) {
			StringBuffer sb = new StringBuffer();
			if (t.endsWith("A")) {
				t = t.substring(0, t.length() - 1);
			} else if (t.endsWith("B")) {
				t = t.substring(0, t.length() - 1);
				t = sb.append(t).reverse().toString();
			}
		}

		if (s.equals(t)) {
			System.out.println(1);
		} else {
			System.out.println(0);
		}
	}
}
profile
마구 낙서하는 블로그입니다

0개의 댓글