2022.1.22 练习 PAT甲 1032 Sharing(原题链接)
题解如下:
#include<bits/stdc++.h>
using namespace std;
const int MAX_SIZE=1e6+5;
struct Node
{
string data;
int next;
int flag;
}node[MAX_SIZE];
int main()
{
std::ios::sync_with_stdio(false);
int pos1,pos2,n;
cin>>pos1>>pos2>>n;
int res=-1;
for(int i=0;i<MAX_SIZE;i++)
{
node[i].flag=0;
}
for(int i=0;i<n;i++)
{
int tmp0,tmp1;
string tmp_d;
cin>>tmp0>>tmp_d>>tmp1;
node[tmp0].data=tmp_d;
node[tmp0].next=tmp1;
}
for(int i=pos1;i!=-1;i=node[i].next)
{
node[i].flag=1;
}
for(int i=pos2;i!=-1;i=node[i].next)
{
if(node[i].flag==1)
{
res=i;
break;
}
}
if(res==-1)
cout<<-1<<endl;
else
cout<<setw(5)<<setfill('0')<<res<<endl;
return 0;
}
参考博客:cout输出定长数据(不足前补0)