언어: python
번호: 1343
제목: 폴리오미노
등급: 실버 5
풀이 과정:
사전 순으로 가장 앞서는 답을 출력한다고 했으니 최대한 "AAAA"로 덮어야 한다. "XXXX"를 "AAAA"로 바꾸고, 남은 "XX"는 "BB"로 바꾼다. "X"의 개수가 홀수여서 남으면 폴리오미노로 덮을 수 없으니 -1을 출력한다.
코드:
# 1343
s = input()
s = s.replace("XXXX", "AAAA")
s= s.replace("XX", "BB")
if "X" in s:
print(-1)
else:
print(s)
메모:
처음에는 문자열의 수를 세서 for 문을 돌면서 바꾸려 했는데 잘 안돼서 함수를 찾아보다가 replace가 생각났다. 파이썬은 정말 안될 거 같은 걸 쉽게 해준다... C++ 수업을 듣다가 python 공부를 하니까 문제를 풀다가 놀랄 때가 많다.
'BOJ' 카테고리의 다른 글
[백준/BOJ] python 2309번 일곱 난쟁이 (0) | 2023.01.25 |
---|---|
[백준/BOJ] python 2231번 분해합 (0) | 2023.01.25 |
[백준/BOJ] python 9506번 약수들의 합 (0) | 2023.01.25 |
[백준/BOJ] python 8958번 OX퀴즈 (0) | 2023.01.25 |
[백준/BOJ] python 1904번 01타일 (0) | 2023.01.25 |