신규 블로그를 만들었습니다!
곱셈
https://www.acmicpc.net/problem/2588
2588번: 곱셈
첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다.
www.acmicpc.net
문제 풀이는 글 아래에 있습니다.
문제
(세 자리 수) × (세 자리 수)는 다음과 같은 과정을 통하여 이루어진다.
(1)과 (2)위치에 들어갈 세 자리 자연수가 주어질 때 (3), (4), (5), (6)위치에 들어갈 값을 구하는 프로그램을 작성하시오.
입력
첫째 줄에 (1)의 위치에 들어갈 세 자리 자연수가, 둘째 줄에 (2)의 위치에 들어갈 세자리 자연수가 주어진다.
출력
첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다.
예제
예제입력
472
385
예제출력
2360
3776
1416
181720
Python 문제 풀이
# -*- coding: utf-8 -*-
import sys
def std_input():
return sys.stdin.readline().strip()
if __name__ == "__main__":
# 입력
num = int(std_input())
num_list = list(map(int, std_input()))
# 결과
result = [0, 0, 0, 0]
for index, _ in enumerate(num_list):
result[2 - index] = num * _
result[3] += result[2 - index] * pow(10, 2 - index)
# 출력
for _ in result:
print(_)
첫번째 숫자는 그대로 입력받습니다.
두번째 숫자는 각각의 자리에 위치한 숫자들을 리스트(배열) 형태로 받습니다.
result
라는 리스트를 만들어서 나중에 for
문으로 한번에 출력할 겁니다.
- index 0: 1의 자리 결과 값
- index 1: 10의 자리 결과값
- index 2: 100의 자리 결과값
- index 3: 최종 곱셈 결과값
pow()
라는 메소드를 이용하여 10의 제곱수를 만듭니다.
정답 확인
본 글은 직접 문제를 풀어보고 작성한 글입니다.
더 좋은 방법이 있거나 틀린부분이 있다면 댓글로 공유해주세요!
'Algorithm > 백준 온라인 저지' 카테고리의 다른 글
백준 2869번 - 달팽이는 올라가고 싶다 (Python3 문제풀이) (0) | 2019.12.24 |
---|---|
백준 1712번 - 손익분기점 (Python3 문제 풀이) (0) | 2019.12.23 |
백준 2562번 - 최댓값 (Python 문제 풀이) (0) | 2019.12.01 |
백준 1330번 - 두 수 비교하기 (Python 문제풀이) (1) | 2019.11.30 |
백준 7785번 - 회사에 있는 사람 (Python3) (0) | 2019.08.04 |
최근댓글