파이썬 알고리즘 문제 풀이

BaekJoon Online Judge 10820 파이썬

gogi masidda 2022. 6. 23. 16:49


문제 링크
https://www.acmicpc.net/problem/10820

 

10820번: 문자열 분석

문자열 N개가 주어진다. 이때, 문자열에 포함되어 있는 소문자, 대문자, 숫자, 공백의 개수를 구하는 프로그램을 작성하시오. 각 문자열은 알파벳 소문자, 대문자, 숫자, 공백으로만 이루어져 있

www.acmicpc.net


이번 문제는 처음에 반복 횟수를 입력하지 않는다. 그래서 입력이 없을 경우에 반복을 끝내야한다.
이것을 if not string: 을 이용하여 입력받는 문자열의 변수명이 string이므로 string이 없다면 break하도록 하였다.


import sys

while True:
  string = sys.stdin.readline().rstrip("\n")
    
  if not string:
    break
    
  low, upper, num, space = 0, 0, 0, 0
  for s in string:
    if s.islower():
      low += 1
    elif s.isupper():
      upper += 1
    elif s.isdigit():
      num += 1
    elif s.isspace():
      space += 1

  print(f"{low} {upper} {num} {space}")
728x90