[BOJ 1343번] 폴리오미노(Python)

2024. 2. 13. 10:22· 코딩 테스트 준비/5정한
목차
  1. 📝 문제
  2. ✅ 풀이

📝 문제

💡 민식이는 다음과 같은 폴리오미노 2개를 무한개만큼 가지고 있다.
AAAA와 BB이제 '.'와 'X'로 이루어진 보드판이 주어졌을 때,
민식이는 겹침없이 'X'를 모두 폴리오미노로 덮으려고 한다.
이때, '.'는 폴리오미노로 덮으면 안 된다.
폴리오미노로 모두 덮은 보드판을 출력하는 프로그램을 작성하시오.
⚙️ 입력 : 첫째 줄에 보드판이 주어진다.
보드판의 크기는 최대 50이다.
⚙️ 출력 : 첫째 줄에 사전순으로 가장 앞서는 답을 출력한다.
만약 덮을 수 없으면 -1을 출력한다.

 

문제링크

 

1343번: 폴리오미노

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

www.acmicpc.net


✅ 풀이

board = input()
answer = ''
count = 0
check = True
for i in range(len(board)):
    if board[i] == 'X':
        count += 1

    elif board[i] == '.':
        if count % 2 == 1:
            check = False
            break
        else:
            answer += ('AAAA' * (count // 4))
            answer += ('BB' * ((count % 4) // 2))
            answer += '.'
            count = 0

if count % 2 == 1:
    check = False

answer += ('AAAA' * (count // 4))
answer += ('BB' * ((count % 4) // 2))

if check:
    print(answer)
else:
    print(-1)
💡 문자열의 처음부터 X를 카운팅하며 진행했다.
.을 만나면 이전까지의 카운트를 바탕으로 정답을 일부 만들도록 했고,
마지막에 반복이 종료된 이후에 남은 나머지를 가지고 한번 더 진행하여
나머지 정답을 마저 만들어서 마무리하도록 했다.
저작자표시 비영리 변경금지 (새창열림)
  1. 📝 문제
  2. ✅ 풀이
'코딩 테스트 준비/5정한' 카테고리의 다른 글
  • [BOJ 1384번] 메시지(Python)
  • [BOJ 1380번] 귀걸이(Python)
  • [BOJ 1340번] 연도 진행바(Python)
  • [BOJ 1316번] 그룹 단어 체커(Python)
zzzini
zzzini
종착지는 어디인지 모르지만
zzzini
나의 표류일지
zzzini
전체
오늘
어제
  • 분류 전체보기 (308)
    • ASAC 빅데이터 분석가 4기 (44)
      • Python기초 (6)
      • SQL (3)
      • Matplotlib & Seaborn (2)
      • Data Handling (6)
      • Web Crawling (3)
      • Machine Learning (9)
      • Deep Learning (10)
      • 데이터 분석 (1)
      • 기타 (2)
      • 수학 (2)
    • 코딩 테스트 준비 (168)
      • 5정한 (132)
      • 카카오 (14)
      • PCCP & PCCE (3)
      • 프로그래머스 (19)
    • 자격증 (35)
      • AWS CLF-C02 (18)
      • AWS SAA-C03 (1)
      • Tableau Desktop Specialist (5)
      • Tableau Certified Data Anal.. (11)
    • 독서 (17)
    • Tech (24)
      • Tableau (11)
      • AI (4)
      • Flask (1)
      • Node.js (2)
      • Cloud Computing (2)
      • Git & GitHub (1)
      • Notion API (1)
      • Linux (2)
    • Projects (2)
    • 알고리즘 공부 (6)
    • 🎵 (11)

블로그 메뉴

  • 글 쓰기
  • 홈
  • 방명록

공지사항

hELLO · Designed By 정상우.v4.2.1
zzzini
[BOJ 1343번] 폴리오미노(Python)
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.