码迷,mamicode.com
首页 > 其他好文 > 详细

2019冬季PAT甲级第四题

时间:2020-02-03 16:00:10      阅读:493      评论:0      收藏:0      [点我收藏+]

标签:define   false   std   main   type   ret   mic   new   nbsp   

 1 #define HAVE_STRUCT_TIMESPEC
 2 #include<bits/stdc++.h>
 3 using namespace std;
 4 typedef struct node{
 5     int data;
 6     node *lchild,*rchild;
 7 }tree;
 8 int a[37];
 9 tree *build(int l,int r){
10     if(l>r)
11         return NULL;
12     int mn=1e9+7,pos=0;
13     for(int i=l;i<=r;++i)
14         if(a[i]<mn)
15             mn=a[i],pos=i;
16     tree *temp=new tree();
17     temp->data=mn;
18     temp->lchild=build(l,pos-1);
19     temp->rchild=build(pos+1,r);
20     return temp;
21 }
22 int main(){
23     ios::sync_with_stdio(false);
24     cin.tie(NULL);
25     cout.tie(NULL);
26     int n;
27     cin>>n;
28     for(int i=1;i<=n;++i)
29         cin>>a[i];
30     tree *temp=build(1,n);
31     queue<tree *>q;
32     q.push(temp);
33     int ans[37]={};
34     int cnt=0;
35     while(!q.empty()){
36         tree *now=q.front();
37         q.pop();
38         ans[++cnt]=now->data;
39         if(now->lchild)
40             q.push(now->lchild);
41         if(now->rchild)
42             q.push(now->rchild);
43     }
44     for(int i=1;i<=cnt;++i){
45         if(i>1)
46             cout<<" ";
47         cout<<ans[i];
48     }
49     return 0;
50 }

 

2019冬季PAT甲级第四题

标签:define   false   std   main   type   ret   mic   new   nbsp   

原文地址:https://www.cnblogs.com/ldudxy/p/12255738.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!