Problem
https://www.acmicpc.net/problem/2588
Solution
code1
1
2
3
4
5
6
7
a = int(input())
b = int(input())
print(a*(b%10))
print(a*(b%100-b%10)//10)
print(a*(b-b%100)//100)
print(a*b)
자리수 별로 나눠서 계산하는 방법이 직접 계산으로 구하는 방법밖에 떠오르지 않았다. 제출하고 다른 사람들의 코드를 보다가 문자열을 활용하여 자리수의 수를 구한 코드를 봤다.
code2
1
2
3
4
5
6
7
a = int(input())
b = input()
print(a*int(b[2]))
print(a*int(b[1]))
print(a*int(b[0]))
print(a*int(b))
위 코드를 보면 line2는 1과 달리 input으로 입력받은 수에 대해 형변환을 바로 하지 않는다. 이는 line4에서 자리수를 구할때 문자열인 점을 활용하기 위해서이다.