Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 편스토랑
- dacon
- Docker
- 파이썬
- leetcode
- Git
- 더현대서울 맛집
- 금융문자분석경진대회
- 프로그래머스 파이썬
- 자연어처리
- 프로그래머스
- gs25
- Real or Not? NLP with Disaster Tweets
- AI 경진대회
- 코로나19
- 맥북
- 백준
- Baekjoon
- 캐치카페
- 편스토랑 우승상품
- Kaggle
- PYTHON
- github
- 데이콘
- programmers
- ChatGPT
- ubuntu
- SW Expert Academy
- 우분투
- hackerrank
Archives
- Today
- Total
솜씨좋은장씨
[BaekJoon] 11091번 : 알파벳 전부 쓰기 (Python) 본문
728x90
반응형

코딩 1일 1문제! 오늘의 문제는 백준의 알파벳 전부 쓰기입니다.
11091번: 알파벳 전부 쓰기
팬그램은 26개의 알파벳, a~z를 최소 한번씩 모두 사용한 문장을 말한다. 아마 가장 유명한 문장은 이것일 것이다. "The quick brown fox jumps over the lazy dog." 꿍은 다른 문장들중에 팬그램인 것은 없는지
www.acmicpc.net
Solution
import re
def use_all_alphabet(string, alphabets):
is_pangram = "pangram"
string = re.sub(r"[^a-z]", '', string.lower())
string = set(string)
not_uesd_alphabet = alphabets - string
if not_uesd_alphabet != set():
not_uesd_alphabet = sorted(list(not_uesd_alphabet))
is_pangram = f"missing {''.join(not_uesd_alphabet)}"
return is_pangram
if __name__ == "__main__":
alphabets = set([chr(i) for i in range(97, 123)])
for _ in range(int(input())):
string = input()
print(use_all_alphabet(string, alphabets))
Solution 풀이
입력받은 문자열을 lower를 활용하여 소문자로 바꾼다음에
정규식을 활용해서 알파벳만 남겨둡니다.
이를 set()으로 만든 다음 기존에 chr로 만들어둔 a부터 z까지 담겨있는 set에서 빼줍니다.
만약 그 결과가 set()일 경우 pangram 그렇지 않을 경우 missing 다음에 남은 알파벳을 정렬한 뒤 붙여 결과를 냅니다.
그럼 끝!
SOMJANG/CODINGTEST_PRACTICE
1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGTEST_PRACTICE development by creating an account on GitHub.
github.com
'Programming > 코딩 1일 1문제' 카테고리의 다른 글
[BaekJoon] 20291번 : 파일 정리 (Python) (0) | 2021.07.13 |
---|---|
[BaekJoon] 7600번 : 문자가 몇갤까 (Python) (0) | 2021.07.12 |
[BaekJoon] 10769번 : 행복한지 슬픈지 (Python) (0) | 2021.07.10 |
[BaekJoon] 2870번 : 수학숙제 (Python) (0) | 2021.07.09 |
[BaekJoon] 13420번 : 사칙연산 (Python) (0) | 2021.07.08 |