[BOJ] 1343: 폴리오미노

이슬비·2023년 2월 21일
0

Algorithm

목록 보기
90/110
post-thumbnail

1. 내 풀이: 실패

import sys
input = sys.stdin.readline

s = input().rstrip()
result = ''
cnt = 0

for i in range(len(s)-1):
    if s[i] == 'X':
        cnt += 1
    if cnt == 2:
        if s[i+1] != 'X':
            result += 'BB'
            cnt = 0
    if cnt == 4:
        result += 'AAAA'
        cnt = 0
    if s[i] == '.':
        result += '.'
        cnt = 0

    
if s[-1] == 'X':
    cnt += 1

if cnt == 2:
    result += 'BB'

if cnt == 4:
    result += 'AAAA'

if len(result) != len(s):
    print(-1)
else:
    print(result)

테스트케이스만 다 맞는 풀이 ...
왜 자꾸 오버피팅 되는 거지 ~~^^?

2. 다른 풀이

board = input()

board = board.replace("XXXX", "AAAA")
board = board.replace("XX", "BB")

if 'X' in board:
    print(-1)
    
else:
    print(board)

풀이 출처: https://s0ng.tistory.com/entry/%EB%B0%B1%EC%A4%80-%EA%B7%B8%EB%A6%AC%EB%94%94-%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-%ED%8F%B4%EB%A6%AC%EC%98%A4%EB%AF%B8%EB%85%B8-1343%EB%B2%88-%ED%8C%8C%EC%9D%B4%EC%8D%AC-python

이렇게 단순하고 쉽게 풀다니 ,,, 눈물난다 눈물나 ,,,
너무 어렵게 생각하지 말자!

3. 마치며

너무 어렵게 생각말기 !!!

profile
정말 알아?

0개의 댓글