首页 > TAG信息列表 > P1087
洛谷P1087 FBI树
文章目录 题目思路AC代码后言 题目 添加链接描述 思路 其实这个树很简单,就是一个满二叉树,我们利用父亲结点是i左结点是2* i右节点是2*i+1来存储。就与data信息是字符串所以我利用了一个结构体Node来存储相应信息。存储之后还要对剩余的叶子结点进行处理,就是将叶子结点作[刷题之旅no19]P1087 [NOIP2004 普及组] FBI 树
思路,递归分治 函数: 参数就是结点在字符串上面的区间,L,R 首先设置cnt0和cnt1=0; 递归终止条件就是L==R 此时判断是0还是1,打印B或者I //出错 然后递归左子树,区间就是[L,R/2]; 递归右子树,区间就是[R/2+1,R]; //出错 然后看当前是F还是I, 直接遍历即可 for(int i=L;i<=R;i++) { if(P1087 FBI树
输入输出样例 输入 #1复制 310001011 输出 #1复制 IBFBBBFIBFIIIFF 说明/提示 对于40%的数据,N≤2; 对于全部的数据,N≤10。 noip2004普及组第3题 题解 很多树的题目事实上根本不用把树建立出来 1 #include<iostream> 2 #include<cmath> 3 4 using namespaceP1087-FBI树
1 #include <bits/stdc++.h> 2 #define _for(i,a,b) for(int i = (a);i < b;i ++) 3 typedef long long ll; 4 using namespace std; 5 string S; 6 int N; 7 inline ll read() 8 { 9 ll ans = 0;10 char ch = getchar(), last = ' ';11 whilP1087 FBI树
题目描述 我们可以把由“00”和“11”组成的字符串分为三类:全“00”串称为BB串,全“11”串称为I串,既含“00”又含“11”的串则称为F串。 FBIFBI树是一种二叉树,它的结点类型也包括FF结点,BB结点和I结点三种。由一个长度为2^N2N的“0101”串S可以构造出一棵FBIFBI树TT,递归的构造方法如