백준 1343

DARTZ·2023년 3월 29일
0

알고리즘

목록 보기
103/135

내가 푼 코드

import sys

# sys.stdin = open("input.txt", "r")

# n = map(int, input().split())
# arr = [list(map(int, input().split())) for _ in range(m)]
# data = sys.stdin.readline().rstrip()

data = sys.stdin.readline()


def check(num):

    if num % 2:
        return -1

    aaaa = num // 4
    num = num % 4
    bb = num // 2

    return "AAAA" * aaaa + "BB" * bb


def solution():
    count = 0
    answer = ''
    for d in data:
        if d == "X":
            count += 1

        else:
            if check(count) == -1:
                return -1

            answer += check(count)
            answer += d
            count = 0

    if check(count) == -1:
        return -1

    else:
        answer += check(count)

    return answer

print(solution())

다른 사람 코드

import sys
input = sys.stdin.readline

def sol(board):
    board = board.replace('XXXX', 'AAAA')
    board = board.replace('XX', 'BB')

    if board.count('X') != 0:
        return -1
    else:
        return board

if __name__ == '__main__':
    board = input()

    print(sol(board))

replace 문자열 내장함수를 사용한 풀이이다.

profile
사람들이 비용을 지불하고 사용할 만큼 가치를 주는 서비스를 만들고 싶습니다.

0개의 댓글