#include <iostream>
#include <string>
using namespace std;
int main() {
string zero = "", b1, b2;
cin >> b1>> b2;
for(int i = 0; i < b1.length(); i++){
if(b1[i] == 0)
b1 = b1.substr(1, b1.length() - 2);
else
break;
}
cout << b1 << endl;
int len = b1.length() - b2.length();
if(len < 0){
len = -1*len;
for(int i = 0; i < len; i++)
zero += "0";
b1 = zero + b1;
}
else{
for(int i = 0; i < len; i++)
zero += "0";
b2 = zero + b2;
}
string stack = "";
int carry = 0;
for(int i = 0; i < b1.length(); i++){
int i1 = b1.length() - (i+1);
int i2 = b2.length() - (i+1);
int tmp = b1[i1] + b2[i2] - 2*'0' + carry;
carry = tmp/2;
stack += tmp%2 + '0';
}
for(int i=stack.length()-1; i >= 0; i--)
printf("%c", stack[i]);
return 0;
}
생각외로 복잡해서 내일 마저함.. 졸려
'백준' 카테고리의 다른 글
10867 중복 빼고 정렬하기 (0) | 2019.11.01 |
---|---|
10989 수 정렬하기 3 (0) | 2019.11.01 |
2033 반올림 (0) | 2019.10.27 |
9455 박스 (0) | 2019.10.27 |
10163 색종이 (0) | 2019.10.27 |