栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

poj 3367 Expressions

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

poj 3367 Expressions

#include <iostream>#include <string>#include <cstdio>#include <stack>#include <queue>#include <vector>#include <cstring>#include <algorithm>using namespace std;const int maxn=11000;struct node{    int l,r;    char c;}e[maxn];int cnt;char st[maxn];void initial(){    int len=strlen(st);    for(int i=0;i<=len;i++){        e[i].l=e[i].r=-1;    }    cnt=0;}void solve(){    int len=strlen(st);    stack <int> v;    for(int i=0;i<len;i++){        if(st[i]>='a' && st[i]<='z'){ e[cnt].c=st[i]; v.push(cnt); cnt++;        }else{ int r=v.top(); v.pop(); int l=v.top(); v.pop(); e[cnt].l=l; e[cnt].r=r; e[cnt].c=st[i]; v.push(cnt); cnt++;        }    }}void output(){    string ans;    queue <int> q;    q.push(cnt-1);    while(!q.empty()){        int s=q.front();        q.pop();        ans.push_back(e[s].c);        if(e[s].l!=-1) q.push(e[s].l);        if(e[s].r!=-1) q.push(e[s].r);    }    reverse(ans.begin(),ans.end());    printf("%sn",ans.c_str());}int main(){    int t;    scanf("%d",&t);    while(t-- >0){        scanf("%s",st);        initial();        solve();        output();    }    return 0;}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/371719.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号