백준/브론즈2

[Python] 백준 1225번 - 이상한 곱셈

두부마라탕 2025. 4. 27. 14:57

https://www.acmicpc.net/problem/1225


문제

A×B를 계산하다 지겨워진 형택이는 A×B를 새로운 방법으로 정의하려고 한다.

A에서 한 자리를 뽑고 × B에서 임의로 한 자리를 뽑아 곱한다.

의 가능한 모든 조합 (A가 n자리, B가 m자리 수라면 총 가능한 조합은 n×m개)을 더한 수로 정의하려고 한다.

예를 들어 121×34는

1×3 + 1×4 + 2×3 + 2×4 + 1×3 + 1×4 = 28

이 된다. 이러한 형택이의 곱셈 결과를 구하는 프로그램을 작성하시오.

 

코드

A, B = input().split()
print(sum(map(int, A)) * sum(map(int, B)))

 

풀이

이건 솔직히 코딩보다는 수학 실력이 우선시 되는 것 같다. 처음에 진짜 생각 1도 안 하고 문제 설명대로 하나씩 곱했다가 시간초과를 맞이하고 생각을 해봤다...... 그 결과, 하나씩 곱해서 더할 필요 없이 그냥 각 수의 자릿수를 모두 더한 후 곱하면 되는 문제였다. 다음부턴 진짜 좀 생각하고 풀어야겠다. 넘 무지성으로 코딩하네...

 

1. 숫자를 입력받는다.

2. A와 B의 각 자릿수의 합을 구한 후 두 수를 곱한다.