문제 - https://www.acmicpc.net/problem/12904
12904번: A와 B
수빈이는 A와 B로만 이루어진 영어 단어가 존재한다는 사실에 놀랐다. 대표적인 예로 AB (Abdominal의 약자), BAA (양의 울음 소리), AA (용암의 종류), ABBA (스웨덴 팝 그룹)이 있다. 이런 사실에 놀란 수
www.acmicpc.net
import java.io.*;
import java.util.*;
public class Main {
static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
static BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
public static void main(String[] args) throws Exception {
String S = br.readLine();
String T = br.readLine();
bw.write(can(S, T) ? "1\n" : "0\n");
bw.flush();
bw.close();
br.close();
}
static boolean can(String A, String B){
if (A.equals(B)) return true;
else if (A.length()==B.length()) return false;
return can(A, B.charAt(B.length()-1)=='B'? new StringBuilder(B.substring(0, B.length()-1)).reverse().toString() : B.substring(0, B.length()-1));
}
}
발상의 전환이 필요했던 재밌는 그리디 문제였다.
'공부 > algorithm' 카테고리의 다른 글
BOJ KCM Travel(10217) - Java (0) | 2021.10.10 |
---|---|
BOJ Yonsei TOTO(12018) - Java (0) | 2021.10.04 |
BOJ 소수 경로(1963) - Java (0) | 2021.09.29 |
BOJ 단어 수학(1339) - Java (0) | 2021.09.28 |
BOJ 미세먼지 안녕!(17144) - Java (0) | 2021.09.25 |