求助!!!

P1087 [NOIP2004 普及组] FBI 树

因为你太强了
by Chloris @ 2018-04-23 13:58:50


++
by wasa855 @ 2018-04-23 14:00:28


### 膜拜大神
by LJC00125 @ 2018-04-23 15:45:59


### 蒟蒻的献祭: ```cpp #include<bits/stdc++.h> using namespace std; int n,i; string s; void dfs(int l,int r) { int sum0,sum1,i,mid; mid=(l+r)/2; if (l<r) { dfs(l,mid); dfs(mid+1,r); } sum0=0,sum1=0; for (int i=l;i<=r;i++) if (s[i]=='0') sum0++; else sum1++; if (sum0>0&&sum1>0) printf("B"); else printf("I"); } int main() { scanf("%d\n",&n); scanf("%d\n",&s); dfs(1,1<<n); return 0; } ```
by LJC00125 @ 2018-04-23 15:53:09


orz
by 「 」 @ 2018-04-23 16:43:09


```cpp #include<cstdio> #include<cstring> #include<algorithm> using namespace std; const int maxn=(1<<10)+3; int n; char s[maxn]; inline void dfs(int l,int r) { int mid=(l+r)>>1; if(l<r) { dfs(l,mid); dfs(mid+1,r); } int sum0=0,sum1=0; for(int i=l;i<=r;i++) (s[i]=='0')?sum0++:sum1++; if(sum0>0&&sum1>0) putchar('F'); else if(sum1>0) putchar('I'); else putchar('B'); return; } int main() { scanf("%d",&n); scanf("%s",s); dfs(0,(1<<n)-1); return 0; } ```
by Explorer_CYC @ 2018-05-17 19:07:18


|