#include #include using namespace std; #define ll long long ll get() { int n; scanf(" %d ", &n); ll num1 = 1, last = -1; string s; for (int i=0; i> s; for (int i=0; i last) { num1 *= 2; } else { num1 = num1 * 2 + 1; } } last = pos; } return num1; } int main() { ll n1 = get(); ll n2 = get(); ll num = n1 + n2; // printf("%d %d\n", n1, n2); vector poss; int next = 0, min_val = 0, max_val = 0; poss.push_back(0); for (; num != 1; num/=2) { if (num & 1) { next++; } else { next--; } poss.push_back(next); min_val = min(min_val, next); max_val = max(max_val, next); } printf("%d\n", poss.size()); for (int i=poss.size()-1; i>=0; i--) { int pos = poss[i]; for (int i=min_val; i<=max_val; i++) { if (i == pos) printf("#"); else printf("."); } printf("\n"); } }