문제1) 숫자 다루기
자연수 35를 뒤집으면 53이 되고, 각 자리수를 합하면 8이 된다. 또, 1200을 뒤집으면 21이 되고, 각 자릿수를 합하면 3이 된다. 즉, 뒤집었을 때 불필요한 0은 무시된다.
자연수 N이 입력되면 그 수를 뒤집은 수와 각 자릿수의 합을 출력하는 프로그램을 작성하시오.
자연수 N이 입력된다. (1≤N≤1,000,000)
22
첫째 줄에 뒤집은 수를 출력한다.
둘째 줄에 각 자릿수의 합을 출력한다.
22
4
문제 자체는 어렵지 않은데, "0"을 처리하기가 너무 곤란했다.
여러 푼 사람들 코드를 살펴봤는데 내가 푼 방법보다는 쉽게 푼 것 같다..
일단 내가 푼 방법은 이러하다.
1) 각 숫자를 str값으로 받고, list 형식으로 만들어주었다.
2) 숫자 조합을 리스트로써 각각 값을 넣어주고 , 역순으로 만들었다.
3) 맨 첫번째수가 0인 경우 삭제해준다.
# https://codeup.kr/problem.php?id=4041
number = input()
arr = []
def sum(number):
total = 0
for i in number:
total += int(i)
return total
def sort_array(number):
arg = []
for i in range(len(number)):
arg.append(number[i])
arg.reverse()
arg = remove_Zero(arg)
return arg
def remove_Zero(arg):
while arg[0] == '0':
del arg[0]
return arg
# 반대로 출력
arr = sort_array(number)
print(''.join(arr))
print(sum(number))