#include<bits/stdc++.h>
using namespace std;
long long x,y,a=1,b=1,a1,a2,a3,pt;
int main(){
cin>>x>>y;
for(int i=0;a<=x;i++){
if(a+pow(2,i)<=x){
a+=pow(2,i);
a1++;
}
else break;
}
for(int i=0;a+b<=x;i++){
if(a+b+pow(2,i)<=x){
b+=pow(2,i);
a2++;
}
else break;
}
if(a<x) a+=b,pt=1;
if(b-1) pt=1;
while(a<x){
a3++;
a++;
}
cout<<a1+a2+a3+2+pt<<endl;
cout<<"B C D\n";
cout<<"B C C\n";
for(int i=1;i<=a1;i++) cout<<"B B B\n";
for(int i=1;i<=a2;i++) cout<<"C C C\n";
if(pt) cout<<"B C B\n";
for(int i=1;i<=a3;i++) cout<<"B D B\n";
cout<<"B";
}
https://www.luogu.com.cn/record/128466494
或者证伪这个思路