1097. Deduplication on a Linked List (25)

来源:互联网 发布:windows隐藏的文件夹 编辑:程序博客网 时间:2024/06/05 10:59
#include<cstdio>#include<iostream>#include<vector>#include<string>#include<cmath>using namespace std;struct node{int date;int next;}nodes[100001];int f[100001];int main(){int s,n;cin>>s>>n;int a,date,b;for(int i=0;i<n;i++){cin>>a>>date>>b;nodes[a].date=date;nodes[a].next=b;}vector <int> res,del;int h=s;while(h!=-1){if(f[abs(nodes[h].date)]==0)res.push_back(h);else del.push_back(h);f[abs(nodes[h].date)]=1;h=nodes[h].next;}//cout<<res.size()<<' '<<del.size()<<endl;for(int i=0;i<res.size();i++){if(i!=res.size()-1){printf("%05d %d %05d",res[i],nodes[res[i]].date,res[i+1]);}else {printf("%05d %d -1",res[i],nodes[res[i]].date);}cout<<endl;}for(int i=0;i<del.size();i++){if(i!=del.size()-1){printf("%05d %d %05d",del[i],nodes[del[i]].date,del[i+1]);}else {printf("%05d %d -1",del[i],nodes[del[i]].date);}cout<<endl;}return 0;} 

0 0
原创粉丝点击