关注
#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;
}
查看原帖
点赞 评论
相关推荐
06-13 15:10
杭州电子科技大学 运营 点赞 评论 收藏
分享
06-09 19:55
郑州大学 算法工程师 点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 职场捅娄子大赛 #
372319次浏览 3803人参与
# 摸鱼打卡站 #
41168次浏览 701人参与
# 写给毕业5年后的自己 #
13616次浏览 242人参与
# 找实习你看重大厂光环还是业务方向 #
12447次浏览 94人参与
# 听到哪句话就代表面试稳了or挂了? #
166877次浏览 1347人参与
# 你的房租占工资的比例是多少? #
29894次浏览 333人参与
# 考研对你找工作产生了哪些影响? #
17762次浏览 152人参与
# 什么专业适合考公 #
32467次浏览 208人参与
# 工作压力大怎么缓解 #
83475次浏览 954人参与
# 我在牛客求捞 #
74817次浏览 277人参与
# 你最满意的offer薪资是哪家公司? #
27624次浏览 149人参与
# 投递几十家公司,到现在0offer,大家都一样吗 #
237975次浏览 1758人参与
# 每人推荐一个小而美的高薪公司 #
74685次浏览 1364人参与
# 牛友们的论文几号送审 #
43408次浏览 765人参与
# 机械人的薪资开到多少,才适合去? #
109982次浏览 452人参与
# 百度求职进展汇总 #
397517次浏览 4679人参与
# kpi面有什么特征 #
41971次浏览 335人参与
# 一人推荐一个值得去的通信/硬件公司 #
180588次浏览 1843人参与
# HR问:你期望的薪资是多少?如何回答 #
43707次浏览 538人参与
# 应届生应该先就业还是先择业 #
108544次浏览 629人参与