[백준] 1225 이상한 곱셈

차누·2024년 1월 23일
0

브론즈 2 문제

문제

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문을 사용하면 된다. 두 개 입력 str1,str2일 때, str1.charAt이 한번 돌때 str2.length() for문을 사용하여 str2.charAt은 모든 문자열을 돌면 쉽게 풀 수 있다.
그리고 char 타입을 정수형으로 바꿀려면 문자 - '0'을 하면 된다


import java.util.Scanner;

//이중for문 사용
public class bj_1225 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub

		Scanner sc = new Scanner(System.in);
		String str1 = sc.next();
		String str2 = sc.next();
		long sum = 0;
		
		for(int i = 0; i < str1.length(); i++) {
			
			for(int j = 0; j < str2.length(); j++) {
				
				sum += (str1.charAt(i) - '0') * (str2.charAt(j)- '0');
			
			}
		}
		
		System.out.print(sum);
	}

}
profile
to be good programmer

0개의 댓글