关注
#include <iostream>
#include <vector>
#include <queue>
using namespace std;
int getRoot(string& str)
{
int re = 0;
int i = 0;
while(str[i] != ':')
{
re = re * 10 + (str[i]-'0');
i++;
}
return re;
}
int getLeft(string& str)
{
int re = 0;
int i = 0;
while(str[i] != ':')
{
i++;
}
i++;
bool sign = true;
if(str[i] == '-')
{
sign = false;
i++;
}
while(str[i] != '|')
{
re = re * 10 + (str[i]-'0');
i++;
}
if(sign == false) re = (-1)*re;
return re;
}
int getRight(string& str)
{
int re = 0;
int i = 0;
while(str[i] != '|')
{
i++;
}
i++;
bool sign = true;
if(str[i] == '-')
{
sign = false;
i++;
}
while(str[i] != '\0')
{
re = re * 10 + (str[i]-'0');
i++;
}
if(sign == false) re = (-1)*re;
return re;
}
void middle(int root, vector< vector<int> >& child, vector<int>& re)
{
if(root == -1) return;
middle(child[root][0], child, re);
re.push_back(root);
middle(child[root][1], child, re);
}
int main()
{
vector<int> parent(1023,-1);
vector< vector<int> > child(1023, vector<int>(2,-1));
vector<int> tree;
int ROOT;
cin>>ROOT;
tree.push_back(ROOT);
queue<int> que;
que.push(ROOT);
string str;
int left, right;
int root;
while(que.size()!=0)
{
cin>>str;
root = getRoot(str);
left = getLeft(str);
right = getRight(str);
if(left != -1)
{
parent[left] = root;
que.push(left);
tree.push_back(left);
}
if(right != -1)
{
parent[right] = root;
que.push(right);
tree.push_back(right);
}
child[root][0] = left;
child[root][1] = right;
que.pop();
}
vector<int> rere;
middle(ROOT, child, rere);
for(unsigned long i = 1; i < rere.size(); i++)
{
if(rere[i] < rere[i-1])
{
cout<<0<<endl;
return 0;
}
}
cout<<1<<endl;
return 0;
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 你小心翼翼的闯过多大的祸? #
3981次浏览 68人参与
# 找不到实习会影响秋招吗 #
1399842次浏览 13635人参与
# 实习没事做是福还是祸? #
4325次浏览 68人参与
# 重来一次,你会对开始求职的自己说 #
940次浏览 19人参与
# 2025年终总结 #
134493次浏览 2294人参与
# 考研人,我有话说 #
156609次浏览 1211人参与
# 哪些公司笔/面试难度大? #
7078次浏览 32人参与
# 实习简历求拷打 #
24159次浏览 249人参与
# 你觉得现在还能进互联网吗? #
29963次浏览 201人参与
# 携程工作体验 #
18957次浏览 66人参与
# 大厂VS公务员你怎么选 #
69143次浏览 638人参与
# 扒一扒那些奇葩实习经历 #
140182次浏览 1149人参与
# 找不到好工作选择GAP真的丢人吗 #
93713次浏览 1007人参与
# 那些我实习了才知道的事 #
253118次浏览 1785人参与
# 非技术投递记录 #
672938次浏览 6820人参与
# 机械求职避坑tips #
81090次浏览 531人参与
# 投格力的你,拿到offer了吗? #
154970次浏览 829人参与
# 第一份工作能做外包吗? #
94066次浏览 599人参与
# 作业帮求职进展汇总 #
85497次浏览 559人参与
# 秋招遇到的奇葩面试题 #
101268次浏览 416人参与

