Koala - 6기/기초 알고리즘 스터디

[백준/Python] 5704번: 팬그램

HI.GONY 2022. 3. 27. 23:47

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

 

5704번: 팬그램

입력은 여러 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 많아야 200글자로 이루어져 있는 문장이다. 단어는 공백 하나로 구분되어 있다. 또, 단어는 알파벳 소문자로만 이루어져 있다.

www.acmicpc.net



문제해석

1. 알파벳 문자와 그 문자의 아스키코드를 key와 value로 담은 딕셔너리 Dict 가 필요

2. 문자열 s을 반복해서 입력받는 것이 필요

(실행 종료 조건: '*' 입력)

3. 딕셔너리 변수 Dict 안에는 a~z까지의 26개 알파벳 문자 + 공백문자(' ') 

총 27개 items 쌍 존재

4. 입력 받은 문자열 s와 27개의 문자들간의 비교를 통해 27개의 문자가 모두 문자열 s에 존재하면 'Yes'

& 하나라도 존재하지 않으면 'No' 출력


코드

문제풀이

1. 빈 딕셔너리 변수 Dict 선언한 뒤, 숫자(1 ~ 26)와 알파벳 문자(a ~ z)간의 key와 value 조합 관계 설정

2. 문자열 s에 공백 문자 존재 가능하므로 27번째 key와 value 조합으로 공백문자(' ') 딕셔너리에 대입

3. Dict.values() (= 알파벳 문자)를 리스트화한 변수명 alphabet_Dict 리스트 변수 선언

4. while문과 if 조건문을 활용하여 문자열 s 계속 입력

5. alphabet_Dict 리스트 전체 요소들에 대하여 문자열 s에 모두 존재하는지 여부 확인

6. 모두 존재 시 print("Y") 출력, 하나라도 없을 시 print("N") 출력