#include<cstdio>
#include<iostream>
#include<algorithm>
#include<vector>
#include<queue>
#include<string>
#include<cstring>
#include<cmath>
#include<map>
#define ll long long
using namespace std;
struct node
{
int key,next;
}nd[2000005];
vector<pair<int,int> >v;
int main()
{
int n,head,i,j,x,y,z;
while(scanf("%d%d",&n,&head)!=EOF)
{
for(i = 1;i<=n;i++)
{
scanf("%d%d%d",&x,&y,&z);
nd[x].key = y;
nd[x].next = z;
}
for(i = head;i!=-1;i = nd[i].next)
v.push_back(make_pair(nd[i].key,i));
if(!v.size())printf("%d %d\n",0,-1);
else
{
sort(v.begin(),v.end());
printf("%d %05d\n",v.size(),v[0].second);
for(i = 0;i<v.size()-1;i++)
printf("%05d %d %05d\n",v[i].second,v[i].first,v[i+1].second);
printf("%05d %d -1\n",v[i].second,v[i].first);
}
}
return 0;
}
pat1052 Linked List Sorting
最新推荐文章于 2021-02-23 21:26:21 发布