문제
(세 자리 수) × (세 자리 수)는 다음과 같은 과정을 통하여 이루어진다.
(1)과 (2)위치에 들어갈 세 자리 자연수가 주어질 때 (3), (4), (5), (6)위치에 들어갈 값을 구하는 프로그램을 작성하시오.
입력
첫째 줄에 (1)의 위치에 들어갈 세 자리 자연수가, 둘째 줄에 (2)의 위치에 들어갈 세자리 자연수가 주어진다.
조건
첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다.
예제 입력
472
385
예제 출력
2360
3776
1416
181720
문제 풀이
A = int(input())
B = input()
BList=list(B)
BList.reverse()
for i in range(3):
print(A * int(BList[i]))
print(A*int(B))
input을 사용해 입력을 하게되면 항상 문자열로 입력이 됩니다. 때문에 A는 int를 미리 적용시켜주었습니다. 하지만 B를 자리수로 나눠 넣기 위해서는 문자열이어야 함으로 int를 적용시키지 않았습니다.
for를 통해 앞 번호부터 곱셈을 진행하므로 리스트를 뒤집어 주었습니다.
BList = ["3", "8", "5"]
BList.reverse()
BList = ["5", "8", "3"]
이를 통해 (3), (4), (5)를 차례로 출력하고 전체 곱인 (6)을 출력했습니다. 다른 방법으로 reverse를 사용하지 않고 BList[3-i]로 구현할 수도 있습니다.
이해가 되지 않는 부분은 댓글 남겨주시면 답변해드리겠습니다 :)
문제 페이지
https://www.acmicpc.net/problem/2588
'Python > 백준 문제 풀이' 카테고리의 다른 글
[Python] 백준 고양이(10171), 개(10172), 새싹(25083) 문제풀이 (브론즈V) (0) | 2023.09.29 |
---|---|
[Python] 백준 11382번 꼬마 정민 문제풀이 (브론즈V) (0) | 2023.09.28 |
[Python] 백준 10430번 나머지 문제풀이 (브론즈V) (0) | 2023.09.26 |
[Python] 백준 18108번 1998년생인~ 문제풀이 (브론즈V) (0) | 2023.09.25 |
[Python] 백준 10926번 ??! 문제풀이 (브론즈V) (0) | 2023.09.24 |