[문제 링크] : https://www.acmicpc.net/problem/22193
#include <iostream>
using namespace std;
int N, M;
char A[50000], B[50000];
int Arr[100000];
int main(){
cin >> N >> M >> A >> B;
for(int i=0; i<M; i++){
for(int j=0; j<N; j++){
int temp = (A[N-1-j]-'0') * (B[M-1-i]-'0');
Arr[N+M-1-i-j] += temp;
}
}
for(int i=N+M-1; i>0; i--){
Arr[i-1] += Arr[i] / 10;
Arr[i] %= 10;
}
bool flag = false;
for(int i=0; i<N+M; i++){
if(flag == false){
if(Arr[i] != 0){
flag = true;
}
else if(i == N+M-1){
cout << "0";
}
}
if(flag == true){
cout << Arr[i];
}
}
cout << "\n";
return 0;
}
'알고리즘' 카테고리의 다른 글
[알고리즘] 백준 11023 - 더하기 3 (C++) (0) | 2024.10.15 |
---|---|
[알고리즘] 백준 11283 - 한글 2 (C++) (0) | 2024.10.14 |
[알고리즘] 백준 11966 - 2의 제곱인가? (C++) (0) | 2024.10.12 |
[알고리즘] 백준 24082 - 立方体 (Cube) (C++) (0) | 2024.10.11 |
[알고리즘] 백준 2623 - 음악 프로그램 (C++) (0) | 2024.10.10 |