본문 바로가기
Algorithm/Baekjoon

Baekjoon 1225 이상한 곱셈 JAVA

by Hunveloper 2022. 6. 8.
728x90

 

1225번: 이상한 곱셈

첫째 줄에 A와 B가 주어진다. 주어지는 두 수는 모두 10,000자리를 넘지 않는 음이 아닌 정수이다. 수가 0인 경우에는 0만 주어지며, 그 외의 경우 수는 0으로 시작하지 않는다.

www.acmicpc.net

문제

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가 주어진다. 주어지는 두 수는 모두 10,000자리를 넘지 않는 음이 아닌 정수이다. 수가 0인 경우에는 0만 주어지며, 그 외의 경우 수는 0으로 시작하지 않는다.

출력

첫째 줄에 형택이의 곱셈 결과를 출력한다.

풀이

이중 for문을 이용하여 모든 조합의 수를 O(n^2)의 방법으로 구한다

코드
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		String s1=sc.next(), s2=sc.next();
		long ans=0;
		for(int i=0;i<s1.length();i++)
			for(int j=0;j<s2.length();j++)
				ans+=(s1.charAt(i)-'0')*(s2.charAt(j)-'0');
		System.out.println(ans);
	}
}

 

728x90
728x90

'Algorithm > Baekjoon' 카테고리의 다른 글

Baekjoon 2985 세 수 JAVA  (0) 2022.06.08
Baekjoon 2420 사파리월드 JAVA  (0) 2022.06.08
Baekjoon 4880 다음수 JAVA  (0) 2022.06.08
Baekjoon 3184 양 JAVA  (0) 2022.06.03
Baekjoon 1100 하얀 칸 JAVA  (0) 2022.06.01

댓글