본문 바로가기
C++/알고리즘 관련

[백준] 2588. 곱셈

by 위니밍 2025. 4. 15.
반응형

 

 

1의 자리수 : ((x % 10) / 1)

10의 자리수 : ((x % 100) / 10)

100의 자리수 : ((x % 1000) / 100)

 

해당 규칙으로 보면 쉽게 풀린다.

나같은경우 2중for문으로 (1의자리수,10의자리수,100의자리수)  x (1의자리수,10의자리수,100의자리수) 개념으로 해결했다.

 

#include <iostream>

using namespace std;

int main() {

	int x, y = 0;
	cin >> x;
	cin >> y;
	/*
	cout << ((x % 10) / 1) * ((y % 10) / 1)
		+ ((x % 100) / 10) * ((y % 10) / 1) * 10
		+ ((x % 1000) / 100) * ((y % 10) / 1) * 100;
		*/
	int total = 0;
	for (int i = 1; i <= 100; i*=10) //3번 loop
	{
		int tempTotal = 0;
		for (int j = 1; j <= 100; j*=10)
		{
			tempTotal += (((y % (10 * i)) / i) * j) * ((x % (10 * j)) / j);
		}
		cout << tempTotal << endl;
		total += tempTotal *  i;
	}
	cout << total;

	return 0;
}

 

 

 

반응형

'C++ > 알고리즘 관련' 카테고리의 다른 글

[기본문법] 문자열  (0) 2025.06.01
[기본문법] 1차원 배열  (1) 2025.05.30