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의 각 자릿수의 합을 구한 후 두 수를 곱한다.
'백준 > 브론즈2' 카테고리의 다른 글
| [Python] 백준 1252번 - 이진수 덧셈 (0) | 2025.04.27 |
|---|---|
| [Python] 백준 1212번 - 8진수 2진수 (0) | 2025.04.26 |
| [Python] 백준 1152번 - 단어의 개수 (0) | 2025.04.26 |
| [Python] 백준 1673번 - 치킨 쿠폰 (0) | 2025.04.25 |
| [Python] 백준 1100번 - 하얀 칸 (0) | 2025.04.25 |