PAT-A1097

来源:互联网 发布:西门子plc软件tla 编辑:程序博客网 时间:2024/05/30 23:40
#include<stdio.h>#include<algorithm>using namespace std;struct pnode{int address;int data;int next;}node[100010];int flag[10010]={0},ans_in[100010]={-1},ans_not[100010]={-1};int main(){int i, head, n, p, tp1, c, tp2, num_in=0, num_not=0;scanf("%d%d",&head,&n);for(i=0;i<n;i++){scanf("%d%d%d",&tp1,&c,&tp2);node[tp1].address=tp1;node[tp1].data=c;node[tp1].next=tp2;}p=head;while(p!=-1){if(flag[ abs(node[p].data) ]==0 ){ flag[ abs(node[p].data) ]=1; ans_in[num_in++]=node[p].address;}else{ ans_not[num_not++]=node[p].address; }p=node[p].next;}for(i=0;i<num_in;i++){if(i<num_in-1)printf("%05d %d %05d\n",ans_in[i],node[ans_in[i]].data,node[ans_in[i+1]].address);else printf("%05d %d -1\n",ans_in[i],node[ans_in[i]].data);}for(i=0;i<num_not;i++){if(i<num_not-1)printf("%05d %d %05d\n",ans_not[i],node[ans_not[i]].data,node[ans_not[i+1]].address);else printf("%05d %d -1\n",ans_not[i],node[ans_not[i]].data);}return 0;}

0 0
原创粉丝点击