본문 바로가기

파이썬 알고리즘 풀이

12) 숫자의 추출

문제

문자와 숫자가 섞여있는 문자열이 주어지면 그 중 숫자만 추출하여 그 순서대로 자연수를 만듭니다.

 

만들어진 자연수와 그 자연수의 약수 개수를 출력합니다.

 

조건

만약 “t0e0a1c2h0er”에서 숫자만 추출하면 0, 0, 1, 2, 0이고 이것을 자연수를 만들면 120이 됩니다.

 

즉 첫 자리 0은 자연수화 할 때 무시합니다.

 

출력은 120를 출력하고, 다음 줄에 120 의 약수의 개수를 출력하면 됩니다.

 

추출하여 만들어지는 자연수는 100,000,000을 넘지 않습니다.

 

제한사항

첫 줄에 숫자가 썩인 문자열이 주어집니다. 문자열의 길이는 50을 넘지 않습니다.

 

첫 줄에 자연수를 출력하고, 두 번째 줄에 약수의 개수를 출력합니다.

 

문제풀이

N=input()

cnt=0
a=''
for i in N:
  if i.isdigit():
    a+=i

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

print(int(a))
print(cnt)

'파이썬 알고리즘 풀이' 카테고리의 다른 글

14) 두 리스트 합치기  (0) 2021.10.20
13) 카드 역배치(정올 기출)  (0) 2021.10.20
11) 회문 문자열 검사  (0) 2021.10.20
10) 점수계산  (0) 2021.10.19
9) 주사위 게임  (0) 2021.10.19