백준

백준 1343 폴리오미노(Java)

Park DJ 2023. 1. 23. 19:42

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

 

1343번: 폴리오미노

첫째 줄에 사전순으로 가장 앞서는 답을 출력한다. 만약 덮을 수 없으면 -1을 출력한다.

www.acmicpc.net


 

해석 및 팁

 


 

이 문제는 replace 함수를 사용하면 쉽게 풀리는 문제입니다. 입력받은 문자열에서 XXXX를 AAAA로 replace 하고

XX를 BB로 replace 한후 X가 남아있으면 덮을 수 없는 경우이므로 -1을 출력하면 됩니다.


 

Java 코드

 


import java.util.Scanner;

public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    String str = sc.nextLine();
    
    str = str.replace("XXXX", "AAAA");   //XXXX - > AAAA
    str = str.replace("XX", "BB");       //XX -> BB
    if(str.contains("X")) str= "-1";     //X가 남아있으면 -1 출력
    
    System.out.println(str);
  }
}