#include<bits/stdc++.h>
using namespace::std;

int n;

int main(){
	scanf("%d", &n);
	printf("%d\n", (1 << n) - 1);
	for(int i = 1; i < (1 << n); i++){
		for(int j = 1; j <= (1 << n); j++){
			putchar("BA"[__builtin_popcount(i & j) & 1]);
		}
		puts("");
	}
	return 0;
}

#include <iostream>
#include <cmath>
using namespace std;
typedef long long ll;
const int N=1e5+7;
ll a,b,c,ans,res;
void gao(ll x){
    a=1,b=0,c=0;
    ans=x;
    while(x!=1){
        if(x%2){
            c+=pow(2,b);
            x--;
        }
        b++;
        x/=2;
        a=x;
        ans=min(ans,a+b+c);
    }
}
int main(){
    cin>>res;
    gao(res);
    cout<<ans<<endl;
}
