文章
34
粉丝
18
获赞
6
访问
14.5k
#include <iostream>
using namespace std;
const int N = 1e5 + 10;
int pos,len,t,cnt = 0;
char tree[N]; // 存储树的数组
char str[N]; // 存储输入字符串的数组
void create(int pos){
char c = str[t ++];
if(c == '#'){
return;
}
tree[pos] = c;
create(pos * 2);
create(pos * 2 + 1);
}
int get_depth(int root){
if(tree[root] == 0){
return 0;
}
int left = get_depth(2 * root);
int right = get_depth(2 * root + 1);
return max(left,right) + 1;
}
int main(){
while(cin >> str){
t = 0;
create(1);
cout << get_depth(1) << endl;
}
return 0;
}
登录后发布评论
暂无评论,来抢沙发