백준 문제풀이

1225번 : 이상한 곱셈

하다블 2022. 4. 26. 18:43
반응형

문제는 다음과 같습니다.

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

 

1225번: 이상한 곱셈

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

www.acmicpc.net

 

풀이 코드는 다음과 같습니다.

 

#include<iostream>
#include<string>
using namespace std;
int main()
{
	string A,B;
	cin>>A>>B;
	long long result{0};
	for(int i{0};i<A.size();i++)
	{
		int a = A[i]-'0';
		for(int j{0};j<B.size();j++)
		{
			int b = B[j]-'0';
			result+=a*b;
		}
	}
	cout<<result<<endl;
	return 0;
}

문자열을 숫자로 바꾸는 작업과 큰 숫자 작업을 위해 결과를 도출하는 result는 int 형이 아닌 long long 형으로 표현하였습니다.

아래는 result를 long long 형으로 정의하였고 위에는 int 형으로 정의하였을 때의 결과입니다.

결과를 예측하여 범위를 수정하시는 것도 좋은 방법이고 수행시간을 보고 변수 형태를 정의하는 것도 좋은 방법입니다.

 

반응형

'백준 문제풀이' 카테고리의 다른 글

11654번 : 아스키 코드  (0) 2022.05.06
1015번 : 수열 정렬  (0) 2022.04.27
1193번 : 분수찾기  (0) 2022.04.14
1924번 : 2007년  (0) 2022.04.06
1546번 : 평균  (0) 2022.04.06