반응형
문제
영문 문장을 입력받아 모음의 개수를 세는 프로그램을 작성하시오. 모음은 'a', 'e', 'i', 'o', 'u'이며 대문자 또는 소문자이다.
입력
입력은 여러 개의 테스트 케이스로 이루어져 있으며, 각 줄마다 영어 대소문자, ',', '.', '!', '?', 공백으로 이루어진 문장이 주어진다. 각 줄은 최대 255글자로 이루어져 있다.
입력의 끝에는 한 줄에 '#' 한 글자만이 주어진다.
출력
각 줄마다 모음의 개수를 세서 출력한다.
예제 입력How are you today?
Quite well, thank you, how about yourself? I live at number twenty four. # |
예제 출력7
14 9 |
풀이
테스트 케이스가 정확히 몇 개인지 주어지지 않고 #를 받아야 끝나기 때문에 while을 이용해야 한다.
대소문자를 구별하도록 되어있는데, 쉽게 해결하기 위해 lower() 함수로 문장을 모두 소문자로 만들어주자.
이후 따로 저장해둔 모음과 비교하여 개수를 센 뒤 출력한다.
import sys
input = sys.stdin.readline
v = ['a','e','i','o','u'] // 여러번 선언할 필요가 없다. while 밖으로 빼주자
while True:
s = input().rstrip().lower()
if s == '#':
break
cnt = 0
for i in s:
if i in v:
cnt+=1
print(cnt)
반응형
'알고리즘 연습 > 기초 (입출력 등)' 카테고리의 다른 글
[🥉4 / 백준 17388 / 파이썬] 와글와글 숭고한 (0) | 2022.10.10 |
---|---|
[🥉5 / 백준 17256 / 파이썬] 달달함이 넘쳐흘러 (0) | 2022.10.03 |
[🥉5 / 백준 2738 / 파이썬] 행렬 덧셈 (5) | 2022.08.26 |
[🥉5 / 백준 25304 / 파이썬] 영수증 (0) | 2022.08.06 |
[🥉5 / 백준 25083 / 파이썬] 새싹 (0) | 2022.05.06 |