#include <iostream>
#include <cstring>
#include <algorithm>
#include <vector>
using namespace std;
//#define int long long
const int N = 510;
int d[N][N];
int sex[N];
int maxv[N];
signed main()
{
int n;cin>>n;
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
d[i][j]=(i==j)?0:1e9;
for(int i=1;i<=n;i++)
{
char op;cin>>op;
sex[i]=(op=='M');
int m;cin>>m;
while(m--)
{
int fri,dis;
scanf("%d:%d",&fri,&dis);
d[i][fri]=dis;
}
}
for(int k=1;k<=n;k++)
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
d[i][j]=min(d[i][j],d[i][k]+d[k][j]);
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
if(sex[i]^sex[j])
maxv[i]=max(maxv[i],d[j][i]);
for(int t=0;t<2;t++)
{
int minv=1e9;
for(int i=1;i<=n;i++)
if(sex[i]==t)minv=min(minv,maxv[i]);
int c=0;
for(int i=1;i<=n;i++)
{
if(maxv[i]==minv&&sex[i]==t)
{
if(c!=0)cout<<" ";
cout<<i;
c++;
}
}
cout<<endl;
}
}
L2-4 大众情人---Floyd
最新推荐文章于 2025-07-31 17:43:48 发布