//https://www.acmicpc.net/problem/14623 #include <iostream> | |
#include <string> | |
using namespace std; | |
int main(){ | |
string b1,b2; | |
cin >> b1 >> b2; | |
int l1=b1.size(); | |
int l2=b2.size(); | |
int ans[64]={0,}; | |
int digit=1; | |
int length; | |
for(int i=l2-1; i>=0; --i){ | |
int idx=1*digit; | |
for(int j=l1-1; j>=0; --j){ | |
ans[idx++]+=(b1[j]-'0')*(b2[i]-'0'); | |
} | |
++digit; | |
length=idx; | |
} | |
for(int i=1; i<length; i++){ | |
if(ans[i]>=2){ | |
ans[i+1]+=(ans[i]/2); | |
ans[i]%=2; | |
} | |
} | |
for(int i=length; i>0; i--) { | |
if(i==length && ans[i]==0) continue; | |
cout << ans[i]; | |
} | |
return 0; | |
} |
'알고리즘 문제 풀이 > 1DP_과제(~180615)' 카테고리의 다른 글
180519_9461_파도반 수열 (0) | 2018.05.19 |
---|---|
180518_4597_패리티 (0) | 2018.05.18 |
18505_2751_수 정렬하기 2(합병정렬) (0) | 2018.05.05 |
180505_6679_싱기한 네자리 숫자 (0) | 2018.05.05 |
180504_2751_수 정렬하기 2 (퀵정렬) (0) | 2018.05.04 |
//https://www.acmicpc.net/problem/14623 #include <iostream> | |
#include <string> | |
using namespace std; | |
int main(){ | |
string b1,b2; | |
cin >> b1 >> b2; | |
int l1=b1.size(); | |
int l2=b2.size(); | |
int ans[64]={0,}; | |
int digit=1; | |
int length; | |
for(int i=l2-1; i>=0; --i){ | |
int idx=1*digit; | |
for(int j=l1-1; j>=0; --j){ | |
ans[idx++]+=(b1[j]-'0')*(b2[i]-'0'); | |
} | |
++digit; | |
length=idx; | |
} | |
for(int i=1; i<length; i++){ | |
if(ans[i]>=2){ | |
ans[i+1]+=(ans[i]/2); | |
ans[i]%=2; | |
} | |
} | |
for(int i=length; i>0; i--) { | |
if(i==length && ans[i]==0) continue; | |
cout << ans[i]; | |
} | |
return 0; | |
} |
'알고리즘 문제 풀이 > 1DP_과제(~180615)' 카테고리의 다른 글
180519_9461_파도반 수열 (0) | 2018.05.19 |
---|---|
180518_4597_패리티 (0) | 2018.05.18 |
18505_2751_수 정렬하기 2(합병정렬) (0) | 2018.05.05 |
180505_6679_싱기한 네자리 숫자 (0) | 2018.05.05 |
180504_2751_수 정렬하기 2 (퀵정렬) (0) | 2018.05.04 |