#include
char a[2000];
#include
int tree(int begin,int end)
{
char s=0;
char i, j;
if (begin == end) { printf("%c", a[begin] == '1' ? 'I' : 'B'); return a[begin]-'0'; }
i=tree(begin, (begin + end)/ 2);
j=tree((begin + end) / 2 + 1, end);
if (j != i)
{
printf("F");
return 2;
}
else
{
switch (i)
{
case 0:printf("B"); return 0;
case 1:printf("I"); return 1;
case 2:printf("F"); return 2;
}
}
}
int main()
{
int n=0,i=0;
scanf("%d", &n);
int k=1;
for (int j = 0; j < n; j++)
{
k *= 2;
}
scanf("%s", a);
tree(0, k-1);
return 1;
}
题目中说输入最大为2^N,N<=10,我这里字符串数组a开了2000可还是会RE,这是因为什么啊 !
题目怎么说的,n是什么值?
题目在哪呢,放出来看
做题第一步是先审题
审题审不明白后面都白做