새소식

⌨️ Algorithms/백준

[Python] 백준 9933번_민균이의 비밀번호

2023. 5. 13. 21:48

  • -

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

 

9933번: 민균이의 비밀번호

첫째 줄에 단어의 수 N (2 ≤ N ≤ 100)이 주어진다. 다음 N개 줄에는 파일에 적혀있는 단어가 한 줄에 하나씩 주어진다. 단어는 알파벳 소문자로만 이루어져 있으며, 길이는 2보다 크고 14보다 작은

www.acmicpc.net

 

  • 민균이의 비밀번호는 목록에 포함되어 있으며, 비밀번호를 뒤집어서 쓴 문자열도 포함되어 있음
  • 예를 들어, 민균이의 비밀번호가 "tulipan"인 경우에 목록에는 "napilut"도 존재해야 함
  • 민균이의 파일에 적혀있는 단어가 모두 주어졌을 때, 비밀번호의 길이와 가운데 글자를 출력하기
  • 입력
    • 첫째 줄에 단어의 수 N (2 ≤ N ≤ 100)이 주어짐
    • 다음 N개 줄에는 파일에 적혀있는 단어가 한 줄에 하나씩 주어짐
    • 단어는 알파벳 소문자로만 이루어져 있으며, 길이는 2보다 크고 14보다 작은 홀수
  • 출력
    • 첫째 줄에 비밀번호의 길이와 가운데 글자를 출력
    • 항상 답이 유일한 경우만 입력으로 주어짐
  • 시간 제한: 1초
  • 메모리 제한: 128 MB

 

"""
입출력 예시)

(예제 입력 1) 
4
las
god
psala
sal
    -> 3 a

(예제 입력 2) 
4
kisik
ptq
tttrp
tulipan
        -> 5 s
"""

 

 

## 의사코드 ##

# 목록에 포함되어 있는 단어이면서 뒤집어서 쓴 문자열도 목록에 포함되어있는 단어가 비밀번호
# for w in words:
#     if w[::-1] in words:
#         password = w

# 단어의 길이는 2보다 크고 14보다 작은 홀수
    # -> 항상 홀수만 주어짐
# 비밀번호의 가운데 글자 
# password[len(password)//2]

 

 

 

 

n = int(input())
words = [] # 단어를 담은 리스트
for _ in range(n):
    words.append(input())

# 목록에 포함되어 있는 단어이면서 뒤집어서 쓴 문자열도 목록에 포함되어있는 단어가 비밀번호
for w in words:
    if w[::-1] in words:
        password = w

# 비밀번호의 길이와 가운데 글자 출력
print(len(password), password[len(password)//2])
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다!