求助求助
为啥递归中第二个dfs取字符串时不可以不写取几个
#include<bits/stdc++.h>
using namespace std;
string a;
void dfs(string s){
int n=s.length();
if(n==0)return ;
dfs(s.substr(0,n/2));
dfs(s.substr(n/2,n/2));
int n1=0,n0=0;
for(int i=0;i<n;i++){
if(s[i]=='1')n1++;
else n0++;
}
if(n1==n)cout<<"I";
else if(n0==n)cout<<"B";
else cout<<"F";
}
int main(){
int n;
scanf("%d",&n);cin>>a;
dfs(a);
return 0;
}
卡了好久