C++ 代码
#include <iostream>
using namespace std;
int n;
void work(string& ss){
int cnt_0 = 0, cnt_1 = 0;
for(char c : ss){
if(c == '0') ++ cnt_0;
else ++ cnt_1;
}
if(cnt_0 && cnt_1) cout << 'F';
else if(cnt_0) cout << 'B';
else cout << 'I';
}
void dfs(string s){
if(s.size() > 1){
dfs(s.substr(0, s.size() >> 1));
dfs(s.substr(s.size() >> 1));
}
work(s) ; // 后序遍历
}
int main()
{
cin >> n;
string s;
cin >> s;
dfs(s);
return 0;
}