[파이썬/python] 백준 1706 - 크로스워드

2025. 1. 6. 13:09·알고리즘
반응형

문제

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


문제 설명

  1.   RxC 크기의 다 푼 크로스워드 퍼즐이 입력된다.
    1. 각 칸은 알파벳이 하나씩 적혀있다.
    2. 금지된 칸은 #으로 표기한다. 
  2. 각 가로, 세로별 존재하는 낱말 중사전식으로 가장 앞서 있는 낱말을 구해라.
    1. 이 때 한 단어는 낱말로 취급하지 않는다.

 


풀이 

  1. 완전탐색을 통해 가로 세로 별로 낱말을 탐색한다.
  2. 금지 단어 #을 기준으로 낱말을 파싱하여 한 글자가 아니라면 최종 단어 배열에 추가한다. 
  3. 정렬을 통해 가장 첫 번째 인덱스 단어를 출력한다.

코드

import sys
input = sys.stdin.readline

R,C = map(int,input().split())

board = [list(input().strip())+["#"] for _ in range(R) ]
board.append(['#' for _ in range(C)])
words = []

#가로 단어 검사
for row in range(R):
    word = []
    for col in range(C+1):
        if board[row][col] == '#':
            if len(word) > 1:
                words.append("".join(word))
            word.clear()
        else:
            word.append(board[row][col])
#세로 단어 검사
for col in range(C):
    word = []
    for row in range(R+1):
        if board[row][col] == '#':
            if len(word) > 1:
                words.append("".join(word))
            word.clear()
        else:
            word.append(board[row][col])

print(sorted(words)[0])

시간복잡도

  • 최악일 경우 $R, C = 20$
  • 가로 탐색 시 시간복잡도 : $O(R*C)$
  • 세로 탐색 시 시간복잡도 : $O(R*C)$
  • 총 시간복잡도 : $O(2*R*C)$ = $(8*10^2)$
반응형

'알고리즘' 카테고리의 다른 글

[파이썬/python] 백준 1927 - 최소 힙  (0) 2025.01.21
[파이썬/python] 백준 20920 - 영단어 암기는 괴로워  (2) 2025.01.21
[파이썬/python] 백준 1929- 소수 구하기  (0) 2025.01.05
[파이썬/python] 백준 1874 - 스택 수열  (0) 2025.01.05
[파이썬/python] 백준 3077 - 임진왜란  (0) 2025.01.05
'알고리즘' 카테고리의 다른 글
  • [파이썬/python] 백준 1927 - 최소 힙
  • [파이썬/python] 백준 20920 - 영단어 암기는 괴로워
  • [파이썬/python] 백준 1929- 소수 구하기
  • [파이썬/python] 백준 1874 - 스택 수열
개골개굴
개골개굴
굶고 코딩하기
  • 개골개굴
    밥스토리
    개골개굴
  • 전체
    오늘
    어제
  • 글쓰기 관리
    • 분류 전체보기 (144)
      • 알고리즘 (124)
      • Java (2)
      • 자기개발 (18)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    파이썬
    springboot
    java
    async
    작심삼일 챌린지
    인프런
    알고리즘
    Redis
    python
    SMTP
    completablefuture
    OS
    컴퓨터구조
    백준
    컴퓨터 구조
  • 최근 댓글

  • 반응형
  • hELLO· Designed By정상우.v4.10.0
개골개굴
[파이썬/python] 백준 1706 - 크로스워드
상단으로

티스토리툴바