[파이썬 알고리즘 문제풀이] - Section3 / 탐색 & 시뮬레이션 -2

Chooooo·2023년 1월 24일
0

🎈 숫자만 추출

문자와 숫자가 섞여있는 문자열이 주어지면 그 중 숫자만 추출하여 그 순서대로 자연수를 만
듭니다. 만들어진 자연수와 그 자연수의 약수 개수를 출력합니다.
만약 “t0e0a1c2h0er”에서 숫자만 추출하면 0, 0, 1, 2, 0이고 이것을 자연수를 만들면 120이
됩니다. 즉 첫 자리 0은 자연수화 할 때 무시합니다. 출력은 120를 출력하고, 다음 줄에 120
의 약수의 개수를 출력하면 됩니다.
추출하여 만들어지는 자연수는 100,000,000을 넘지 않습니다.

▣ 입력설명
첫 줄에 숫자가 썩인 문자열이 주어집니다. 문자열의 길이는 50을 넘지 않습니다.
▣ 출력설명
첫 줄에 자연수를 출력하고, 두 번째 줄에 약수의 개수를 출력합니다.

import sys

data = input()
res = 0
for x in data:
    if x.isdigit():
        res = res * 10 + int(x)
cnt = 0

for i in range(1, res+1):
    if res % i == 0:
        cnt += 1

print(res)
print(cnt)

🎃 코멘트
문자열 내장함수 활용. 들어오는 문자가 숫자인지 확인해주는 isdigit() 메서드를 사용했다면 매우 쉽게 해결할 수 있었던 문제.

  • 문자열 내장함수 다 기억하자.
profile
back-end, 지속 성장 가능한 개발자를 향하여

0개의 댓글