문제
10820번: 문자열 분석
문자열 N개가 주어진다. 이때, 문자열에 포함되어 있는 소문자, 대문자, 숫자, 공백의 개수를 구하는 프로그램을 작성하시오. 각 문자열은 알파벳 소문자, 대문자, 숫자, 공백으로만 이루어져 있
www.acmicpc.net
알고리즘
- 문자열이 몇 번 입력받는지 모르기에 while문을 통해 반복한다.
- 리스트를 입력받고 문자를 반복하여 어떤 문자인지 확인하여 카운트한다.
- 리스트에 아무것도 입력받지 못했다면 반복문을 멈춘다.
코드
import sys
while True:
n = list(map(str, sys.stdin.readline().rstrip("\n")))
upper = 0
lower = 0
num = 0
blank = 0
# 리스트 안에 아무것도 없으면 멈춘다.
if not n:
break
# 문자를 반복하여 어떤 문자인지 확인
for i in n:
# 대문자인지
if i.isupper():
upper += 1
# 소문자인지
elif i.islower():
lower += 1
# 숫자인지
elif i.isdigit():
num += 1
# 공백인지
elif i == " ":
blank += 1
print(lower, upper, num, blank)
github
GitHub - junjange/CodingTest: 내가 푼 코딩 테스트 문제와 해결법
내가 푼 코딩 테스트 문제와 해결법. Contribute to junjange/CodingTest development by creating an account on GitHub.
github.com
'CodingTest > Baekjoon' 카테고리의 다른 글
[baekjoon] 백준 11655번(파이썬): ROT13 (0) | 2021.09.14 |
---|---|
[baekjoon] 백준 2743번(파이썬): 단어 길이 재기 (0) | 2021.09.14 |
[baekjoon] 백준 10809번(파이썬): 알파벳 찾기 (0) | 2021.09.13 |
[baekjoon] 백준 10808번(파이썬): 알파벳 개수 (0) | 2021.09.12 |
[baekjoon] 백준 1935번(파이썬): 후위 표기식2 (0) | 2021.09.11 |